簡介癌症幹細胞(Cancer Stem Cells) – 魔鬼在細節中(四):癌症幹細胞的區位(niche)

這一系列是閱讀此篇論文的摘要和整理
Valent, P., Bonnet, D., Maria, R.D., Lapidot, T., Copland, M., Melo, J.V., Chomienne, C., Ishikawa, F., Schuringa, J.J., Stassi, G., Huntly, B.J., Herrmann, H.G., Soulier, J.S., Rösch, A., Schuurhuis, G.J., Woehrer, S., Arock, M., Zuber, J., Cerny-Reiterer, S., Johnsen, H.E., Andreeff, M., & Eaves, C.G. (2012). Cancer stem cell definitions and terminology: the devil is in the details. Nature Reviews Cancer, 12, 767-775.

區位(niche),這個詞是借用在生態學中的名詞,用來敘述一個物種在環境中的角色,文章在這邊借用這個意思來談癌症幹細胞跟其所屬的組織的互動和角色。

A niche is also an organism’s specificposition or purpose within the group of organisms with which it lives

—-from Cambridge dictionary

當我們確認了所謂的“癌症幹細胞”是存在的概念後,去問“癌症幹細胞在組織中的角色和其他細胞的互動式如何?”便非常順理成章,想要回答這個問題,所牽涉的科學驗證鐵定是更難的,但也更貼近實際上癌症幹細胞在身體內的實際存在狀況。

最近的研究證據顯示癌症幹細胞在體內及體外,對於抗癌藥物的反應不太一樣,暗示了癌症幹細胞所處的環境可能扮演者重要的角色。而目前研究主題已在探討癌症幹細胞所處的環境中的纖維母細胞(fibroblast)、細胞內膜細胞(endosteal cells)、免疫細胞如巨噬細胞(macrophage)對於癌症細胞抵禦治療的原因。

在分子層面則知道參與癌症幹細胞與微環境的互動(CSC-niche interaction)有黏著受體(adhesion receptors)、細胞激素受體(cytokine receptors)、細胞激素配體(cytokine ligand)、趨化因子(chemotactic factors)。其中一個有趣的例子便是CXCR4,其為趨化因子SDF-1(Stromal cell-derived factor 1),在多種癌症細胞中都有發現被表現,其在SDF-1的趨化下,能讓癌症細胞能進入骨髓之中。這發現被用來發展針對CXCR4-SDF-1的藥物,讓癌症幹細胞更容易被現有的藥物所打中,因其無法躲入骨髓之中。

相關引用

Domanska, U. M. et al. A review on CXCR4/CXCL12 axis in oncology: no place to hide. Eur. J. Cancer 8 Jun 2012 [epub ahead of print].

Damon, L. E. & Damon, L. E. Mobilization of hematopoietic stem cells into the peripheral blood. Exp. Rev. Hematol. 2, 717–733 (2009).

Kessans, M. R., Gatesman, M. L. & Kockler, D. R. Plerixafor: a peripheral blood stem cell mobilizer. Pharmacotherapy 30, 485–492 (2010).

Burger, J. A. & Peled, A. CXCR4 antagonists: targeting the microenvironment in leukemia and other cancers. Leukemia 23, 43–52 (2009).

簡介癌症幹細胞(Cancer Stem Cells) – 魔鬼在細節中(三):當前癌症幹細胞的測定方式

這一系列是閱讀此篇論文的摘要和整理
Valent, P., Bonnet, D., Maria, R.D., Lapidot, T., Copland, M., Melo, J.V., Chomienne, C., Ishikawa, F., Schuringa, J.J., Stassi, G., Huntly, B.J., Herrmann, H.G., Soulier, J.S., Rösch, A., Schuurhuis, G.J., Woehrer, S., Arock, M., Zuber, J., Cerny-Reiterer, S., Johnsen, H.E., Andreeff, M., & Eaves, C.G. (2012). Cancer stem cell definitions and terminology: the devil is in the details. Nature Reviews Cancer, 12, 767-775.

如何測定癌症幹細胞

當前最常用來作為癌症幹細分的功能性測定工具,便是免疫缺乏的老鼠,當然,其中根據流程的不同,鐵定有許多概念上的微調,這邊整理一下論文中的關於這類型使用免疫學發老鼠的癌細胞移植模型的缺陷:

限制 可能改善的方式
免疫缺乏老鼠的生命週期短(Short lifetime of mice) second generation recipients or other animals
改變原本癌症幹細胞的實際生長環境(Altered homing of CSCs) Orthotopic injection, humanized vasculature, humanized organ, humanized mice and growth-supporting synthetics scaffolds embedded in local tissue sites
缺乏可以刺激癌症幹細胞的細胞激素(Lack of cytokines that can stimulate growth of CSCs) Injection of cytokines, cytokine-transgenic mice, humanized organs and humanized mice
缺乏原本癌症所處的微環境(Lack of tumour-specific micro-environment) Local injection of human microenvironmental cells, humanized mice and supportive scaffolds
缺乏免疫細胞於環境中(Lack of intact immune cells, lack of natural immunosurveillance) Prior transplantation of CD34+ haematopoietic cells, humanized lymphoid organs, humanized mice and co-transplanaton of immune cells

在未來,持續針對這類免疫缺乏老鼠的模型改善,會對於這類型癌症幹細胞研究提供許多幫助。比如基改老鼠讓其能產生特定的人類細胞激素、將人類的造血細胞移植到老鼠身上,打造適合癌症的環境。

將癌細胞從病人癌症組織培養出來後,以體外細胞實驗的方式來作為癌症幹細胞的研究模型,這類型的細胞實驗需要同時將癌症組織和滋養細胞養再一起,讓這些滋養細胞能分泌這些癌組織所需要的資訊和營養,最後在使用如LTC-IC assay來做量測。這類型的測定第一點明顯的問題就是癌細胞生長的環境跟體內是不同的,所以這些癌細胞在此環境下無法展現出自我更新的能力,不一定代表其就不是癌症幹細胞,只能說其缺乏否些體內環境的因子刺激,另外,體外實驗也無法百分百呈現立體的培養環境,除此之外,體外實驗的細胞頂多只能存活數週到數個月,這些細胞就會死亡,或是分化為臨床上不重要的細胞類別。

最後一類,直接使用常見的癌症細胞株,也常用來作為癌症幹細胞的研究,這類型的研究往往會帶有原本細胞株來源的特性,所以此類研究如何提問就變得很重要,必須很精準,同樣的概念,有人之間使用統合分析(meta-analysis)的方式,直接去分析抗癌藥物,在各類型細胞株中的反應,而找尋相關的關聯,此類研究方式,也有上述需要小心驗證的問題。

綜合以上的討論,在撰寫上述相關類型實驗的研究時,必須要將流程中的細節講清楚,細胞株的名字,實驗中的各種培養時間等等。

近年來,發展出各類老鼠癌症模型,直接在這類動物模型中做研究是不錯的方法,但難度就更高,已經有人使用lineage tracing技術在膠質母細胞瘤、消化道癌症、表皮細胞癌症,直接研究其抗藥性產生的機制。

簡介癌症幹細胞(Cancer Stem Cells) – 魔鬼在細節中(二):關於癌組織是否是株系層狀結構的討論

這一系列是閱讀此篇論文的摘要和整理
Valent, P., Bonnet, D., Maria, R.D., Lapidot, T., Copland, M., Melo, J.V., Chomienne, C., Ishikawa, F., Schuringa, J.J., Stassi, G., Huntly, B.J., Herrmann, H.G., Soulier, J.S., Rösch, A., Schuurhuis, G.J., Woehrer, S., Arock, M., Zuber, J., Cerny-Reiterer, S., Johnsen, H.E., Andreeff, M., & Eaves, C.G. (2012). Cancer stem cell definitions and terminology: the devil is in the details. Nature Reviews Cancer, 12, 767-775.

假如癌組織的演變是來自於從體幹細胞產生組織的過程中發生變異,轉化成癌症幹細胞,進而衍生出一群癌病變組織,那麼惡性腫瘤組織中的細胞間也具有層狀株系(clonal hierarchy),這想法聽起來蠻合理的,目前支持這觀念的研究通常都是從各類型癌症組織從血液腫瘤到實質腫瘤,經由功能性檢測(functional assay)挑選,重新植入免疫缺乏老鼠身上的實驗模型來推論,但後來發現即使這群從各種腫瘤組織中經由嚴格功能檢測實踐摘選出的癌症幹細胞,其實際上異質性相當高,且目前發現部分無法通過這樣功能性篩選方式的癌組織細胞,在不同條件下,其實也能具有發展成一整群癌症組織的能力。

這篇論文Quintana, E., Shackleton, M., Sabel, M. S., Fullen, D. R., Johnson, T. M., & Morrison, S. J. Efficient tumour formation by single human melanoma cells.Nature 456, 593–598 (2008). 便是在談論這個現象。其藉由調整原本用來篩栓用的免疫缺乏老鼠模型由non-obese diabetic/severe combined immunodeficiency (NOD/SCID) 老鼠改成 NOD/SCID interleukin-2 receptor gamma chain null (Il2rg-/-) 老鼠,原本大概只有0.1%病人癌症組織可以因此發展出癌組織,到27%病人癌組織的癌細胞都經由單一癌細胞便能發展成癌症組織。

These findings highlight the fact that malignant cells have perturbed gene expression program that might affect the normal stability or the developmental control  of the expression of certain cell surface markers particularly when the cells are put in vitro.

這樣的證據讓我們能發現到癌細胞其實是一群基因表現非常不穩定的細胞,尤其是在試管內的環境下,可能有許多不可預期的變化。

這些研究顯示或許癌症幹細胞(CSC)內的分子機制顯示其更偏向於一種不穩定的狀態,而到底是如何的調控關係牽涉進去這樣的“癌症幹細胞”狀態,對於當前的研究者便是一個很有挑戰的問題。

Stochastic State Transitions Give Rise to Phenotypic Equilibrium in Populations of Cancer Cells
Figure 5. Two Distinct Models of Cancer
Cell Populations from Gupta, Piyush B., Fillmore, Christine M., Jiang, G., Shapira, Sagi D., Tao, K., Kuperwasser, C., & Lander, Eric S. (2011). Stochastic State Transitions Give Rise to Phenotypic Equilibrium in Populations of Cancer Cells. Cell, 146(4), 633-644.

上面這篇論文Gupta, Piyush B., Fillmore, Christine M., Jiang, G., Shapira, Sagi D., Tao, K., Kuperwasser, C., & Lander, Eric S. (2011). Stochastic State Transitions Give Rise to Phenotypic Equilibrium in Populations of Cancer Cells. Cell, 146(4), 633-644. 頗有趣,使用馬可夫模型嘗試去解構癌症幹細胞這樣的狀態,是否可以用數學模型去解釋。

簡介癌症幹細胞(Cancer Stem Cells) – 魔鬼在細節中(一):定義

screenshot.png
Figure 1 | Models of cancer stem cell evolution: perturbation of the normal differentiation
hierarchy.

這一系列是閱讀此篇論文的摘要和整理:
Valent, P., Bonnet, D., Maria, R.D., Lapidot, T., Copland, M., Melo, J.V., Chomienne, C., Ishikawa, F., Schuringa, J.J., Stassi, G., Huntly, B.J., Herrmann, H.G., Soulier, J.S., Rösch, A., Schuurhuis, G.J., Woehrer, S., Arock, M., Zuber, J., Cerny-Reiterer, S., Johnsen, H.E., Andreeff, M., & Eaves, C.G. (2012). Cancer stem cell definitions and terminology: the devil is in the details. Nature Reviews Cancer, 12, 767-775.

關於“癌症幹細胞(cancer stem cells)”這觀念,如今依舊是討論非常熱烈,姑且不論其實質是否是正確的理論,但這概念在臨床或是研究的應用上卻非常有用,另一方面,癌症幹細胞的定義也隨者時間不段地調整。

Malignant cell populations are organized as unidirectional cellular hierarchies
in which CSCs constitute biologically unique subsets of cells, which are distinguished
from the bulk of the cells that they produce by their exclusive ability to perpetuate the growth of a malignant cell population indefinitely   

— from the paper: (2012). Cancer stem cell definitions and terminology: the devil is in the details. Nature Reviews Cancer, 12, 767-775.

假設惡性腫瘤組織是由少數幾個具有高度自我複製能力的癌細胞所產生,而這群具有自我複製和分化能力的癌症細胞便被稱為癌症幹細胞,在這個理論下,可以用來解釋部分病人的惡性腫瘤在接受治療後,一開始癌細胞數量大減,但一陣子過後復發,反而形成具有抗藥性的癌腫瘤,也就是說這類產生大多數癌組織的“癌症幹細胞”,能將這種抗藥性遺傳給其產生或者說子細胞株。當然,這類對於治療藥物的抵抗性,目前已知也和癌組織和微環境地互動有一定的關係。

這種有少數具由極強自我複製能力的所謂癌症幹細胞,所產生的癌組織,是否一定是符合單向階層(unidirectional hierarchy)關聯,由目前而來的證據,只能說不一定,當組織中有很多癌細胞都具有癌症幹細胞的特性時,有可能此癌症腫瘤組織裡有很多不同種的子細胞株所組成的。與其說是癌症幹細胞是特定類細胞,倒不如說是一種細胞狀態。

關於癌症幹細胞的定義

screenshot.png

再談癌症幹細胞前,先借鑒正常組織中的狀況來論述。

在正常組織中的迭代換新,認為是由少數具有自我複製和分化能力的所謂幹細胞所負責。有趣的是,這些我們定義廣泛具有自我更新特性的幹細胞,實際上在不同的發育階段和位置是非常具有異質性地,這觀念用來反推癌症組織中的“幹細胞”,可見這種的“幹細胞”特性,並非單純只是由單一基因突變或是單純某一過程所產生的。

      Interestingly, it has also become apparent that even stringently defined normal tissue stem cells with extensive self-renewal properties can be intrinsically heterogeneous with regard to their differentiation and self-renewal control in different sites or stages of development .

      Thus, heterogeneity among CSCs in a single tumour type, or even within a single tumour, cannot be assumed to be indicative of an abnormal (tumour-specific) process or to be a consequence of a DNA mutation.

screenshot.png

觀念上的癌症幹細胞定義(Conceptual Context)

惡性前期腫瘤幹細胞(Pre-malignant neoplastic stem cells) 這子類的腫瘤幹細胞可以將腫瘤細胞株持續茁壯,有可能可以再度發展成所謂的癌症幹細胞,但其沒有立即性的癌化驅動潛力。

A subclass of neoplastic stem cells that can propagate neoplastic clones that may or may not develop into cancer-stem cells over time, but have no immediate cancer-initiating potential.

癌症幹細胞(Cancer stem cells)、惡性腫瘤幹細胞(malignant neoplastic stem cells) 這子類的腫瘤幹細胞具有發展成惡性腫瘤細胞株,形成癌症的能力。

A subclass of neoplastic stem cells that propagate malignant clones indefinitely and produce an overt cancer

實驗操作上的癌症幹細胞定義(Operational Context)

體內(in vivo)腫瘤驅動細胞(Neoplasia-initiating cells) 將這類癌腫瘤驅動移植入免疫缺乏的老鼠體內,會形成腫瘤組織,且持續存在。

Cells that regenerate detectable neoplastic populations in xenografted immunodeficient mice that are sustained. usually measured by LDA(limiting diluting assay)

腫瘤或是白血病驅動細胞(Tumour or leukaemia-initiating cells) 將此類腫瘤幹細胞植入免疫缺乏的老鼠,可以產生可檢驗量的癌組織。

A subclass of neoplastic stem cells that regenerate detectable, sustained malignant populations in xenografted immunodeficient mice, usually measured by LDA

腫瘤長期培養驅動細胞(Neoplastic long-term culture-initiating cells) 將此類腫瘤細胞培養在體外環境中,滿足其支持條件,可以包涵惡性前期或是惡性腫瘤細胞。

Cells that can initiate the sustained production of neoplastic populations when cultured in supportive conditions; can include pre-malignant and malignant neoplastic cells, usally measured by LDA

腫瘤球狀細胞(Neoplastic sphere-forming cells) 此類細胞可以在體外培養中,不需依靠環境,形成漂浮組織,且能持續成長。

Cells that can initiate the production of non-adherent ‘sphere’ of neoplastic progeny in in vitro cultures, can include pre-malignant and malignant neoplastic cells, usually measured by counting spheres that can generate secondary spheres when re-plated

這邊比較重要的地方是去假設癌症幹細胞的細胞株係跟正常組織由體幹細胞衍生而成的,有類似,也有相異的地方。

書籍閱讀MIT Essential Knowledge series : Self-Tracking 自我量化

「self tracking」的圖片搜尋結果

這本書是MIT Essential Knowledge Series的其中一本,這一系列大都是請一兩位相關領域的教授,針對目前重要的科技,談論一些入門的知識和想法,而這本Self-Tracking則是談論如今所謂各種使用感測器來量測人體的現象,由牛津大學教授Gina NeffIntel的人類學家Dawn Nafus所寫,觀點特別,蠻適合細細品讀的。

這本書總共有六個章節:

  1. An Introduction to Self-Tracking
  2. What Is at Stake? The Personal Gets Political
  3. Making Sense of Data
  4. Self-Tracking and the Technology Industry
  5. Self-Tracking and Medicine
  6. Future Directions for Self-Tracking

第一個章節,這本書介紹了圍繞"量化自我(Quantify Self)"的定義、概念、社群、量化的工具和相關會議。從偏向醫療需求,以病友為核心的社群到純粹自我興趣的社群,範圍很廣。如病友網站如Patients Like Me (中文介紹) 、Cure Together(已被23andme買下來)。面向健康群體的Coached.me  。專業人士的社群則有TEDMed, Stanford’s Medicine X, O’Reilly Health Foo, HIMSS, Health2.0,關於這類的學門,偏向電腦科學的則有Ubicomp, Persuasive Computing, Computer-Human Interaction, Ubiquitous Computing. 當然最著名的就是QS社群

screenshot.png

Trackers focused on their health want to ensure that their medical practitioners don’t miss the particulars of their condition; trackers who record their mental states are often trying to find their own way to personal fulfillment amid the seductions of marketing and the errors of common opinion; fitness trackers are trying to tune their training regimes to their own body types and competitive goals, but they are also looking to understand their strengths and weaknesses, to uncover potential they didn’t know they had. Self-tracking, in this way, is not really a tool of optimization but of discovery.      

Gary Wolf,The Data-Driven Life New York Times, Dec 14, 2015

量化自我下的議題:

1. 正常與否
如何判斷某項量測值是所謂的正常值?這樣的數值由誰決定?如何決定?
2. 大眾參與,問問題的方式
數據可以用來回答問題,而傳統的數據來自於嚴謹的實驗設計和提問,而如今這類型的自我量化,能也達到此類似的效果?

如何讓這些資料有意義?

這些量化產生的資料,常用來做下面五類的事情(當然實際上有無限種應用可能,這只是大致的分類):

監測和評估(Monitoring and evaluating)

自我量化用來作為評估和監測,是最常見的應用,不一定需要非常數值化,比如書中提到一位QS愛好者Amelia Greenhall,其在QS 大會分享其紀錄的方式,每天只要有慢跑,就在佈告欄上貼上一顆星星,當觀察星星的數量就可以知道自己總共跑了幾點,即使這方式對某些人來說,不夠精確,但其實就足夠作為Amelia Greenhall她作為監督自己運動量的方式了,換句話說,重點可以不在“多精準精細”,而在能否讓你用這些資訊來做評估。

而這部分比較有趣的一個議題就是想要監測和評估的活動,最難的可以說是進食了,跟隨目的不同,會稍稍有記錄角度的差異,比如想要減重的話,對於熱量的飲食估計,變得很困難,有的人就簡單用進食前拍照的方式來記錄飲食狀況,所以從這可發現同樣一個行為的監測,可以有百百種辦法來做量測,重點是能否讓資訊給使用者使用。

Many self-trackers think of this process as a kind of feedback loop, a term from computer science for a system that generates information and then adjusts in response to that information

另外一個有趣的角度便是當量測的行為成為習慣,有時自動化紀錄的工具沒有攜帶,便會讓量測出現誤差,而造成自我量化者的抱怨,因為他們會覺得因為沒有記錄到,所以就沒有做過這件事情的感覺,所以他們也常倡議說這類自我量測的機器應該要能讓使用者保有自由輸入的彈性。

產生新覺知(Eliciting sensations)

這角度蠻有趣的,藉由量測某些自我的數值,在感受自己身體的變化和觀測相關的數據時,讓自己產生某些新的感知能力。社會學家Whitney Boesel 談到他的一個女性被觀察者,當他反覆的使用居家排卵監測器時,慢慢能具有對於身體即將排卵的強烈感受能力,而另外一位在美國的男性則是頻繁地使用血糖計,量測自己對於各種食物和事件後的血糖反應,逐漸地其開始能有能力去感受自己可能的血糖反應。

The data becomes a “prosthetic of feeling," something to help us sense our bodies or the world around us.

試誤性地調整(trial and error)的方式往往是這類型量化的風格,因為往往隨者追蹤的時間越多,對於感受到的情緒變化,會更加的精細(nuanced),此時通常可以利用標籤式來解決此類問題,比如此時同時感受到“開心”、“驚喜”,且另一方面,要保持較開放的態度,避免過早判斷(keep at bay the urge to judge),相對於醫療診斷的聚焦可能性,產生新覺知類型的自我量化更偏向於形成假說,盡量地發展各種情緒/感知可能的存在或記錄方式。

找出問題(Debugging a problem)

除蟲(Debugging)這字彙是資訊工程中,用來描述尋找程序中錯誤的行為,而自我量化的工具在醫療診斷上,同樣可以作為這樣的目的而存在,這邊可以分享Anne Wright的故事,Anne Wright本身是NASA機器人工程師,其有些腸胃問題,但在拜訪許多醫師後,都沒有找到很好的解釋,於事他開始自己收集各式各樣自己的身體資訊和飲食紀錄,後來發現有三樣食物會讓他腸胃道不舒適,於是Anne Wright開啟了一個項目稱作BodyTrackBodyTrack,用來幫助人們理解自己的數值。Anne Wright的故事提醒我們醫學上的知識常常是去看鐘形曲線的中間,而偏離這類鐘形曲線中間的現象,往往沒有很好的方式去尋找可能的問題,或許自我量化可以提供每個人一個找尋自己身體狀況的因果關係之工具或做法。

The purpose of debugging is often to figure out how to solve a problem or what brings relief, not necessarily to find the underlying biomedical cause.

培養習慣(Cultivating a habit)

習慣培養這件事情,一直是各類社會科學、臨床醫學中很難的一個題目,而自我量化的一個很重要的目的,便是希望能培養或者說改變習慣。史丹佛大學的B.J Fogg教授便是這方面行為設計的大師,這裡有些他在Ted的演講 忘掉大改變,從微習慣開始,蠻有趣的。

Self-trackers sometimes talk about “chaining" habits together by timing a new  habit like doing sit-ups just after a preexisting habit, like drinking coffee, so that they effectively become one long gesture – a morning routing, say. Pyschologists call this ‘triggering’ the behavior, or creating the reminder for an action in the routine.

視覺設計原則:Salience – 凸顯

 

The fact of being important for or connected with what is happening or being discussed of     — definition from Cambridge Dictionary

視覺設計原則中,如何去“凸顯(salience)”重要的要素,是其中一個技巧。其目的便是能創造合適的對比,讓觀看者能快速地看到局部的特徵。

Points Of View : Salience Fig1
salience through visual features

從這篇Nature methods的文章Fig1-a,可以發現一眼望去,符號A相對於P,很容易就被看到,這樣的設計就是所謂的凸顯,可以使用顏色、大小、方向、形狀、標記、動作、分組的方式去達到這個目的。

凸顯的目的有二:

第一個,降低觀看者的認知負擔,減少其找尋到特定特徵和意義的時間,適合在像是簡報或是海報等,觀看者同時還在聆聽資訊,兩種感官在競爭觀看者的注意力。

第二個,加快使用者理解較複雜圖形的意義,以便理解設計者進一步疊加在視覺表達上的意義。

Points of View: Salience Fig2
Visual conjuctions

從Fig2的真實例子可以發現,如今的資料複雜度是越來越高的(所以視覺化設計的能力便需要提升),往往想要在一張圖中,放入多維度的意義,這樣就無法良好的凸顯想要傳達的一系列訊息,實際上,可以用Fig2-b的方式,有效地且次序地表達到想要呈現的資訊。這類的圖片通常需要觀者去執行所謂的Visual conjuction的搜尋(看圖標,然後進而去主圖中搜尋),當圖標過多種,此時就達不到良好的突顯,讓使用者找尋特定資訊和理解的時間增加。

 

閱讀參考:

Bang Wong(2010). Points Of View: Salience. Nature Methods
Ware, C. Visual Thinking for Design (Morgan Kaufmann Publishers, Burlington Massachusetts, USA, 2008).

視覺設計原則: Gestalt Principles

「gestalt」的圖片搜尋結果
Fig from WiKi

Gestalt principle是在1920年代被德國心理學家們(格式塔學派)所提出的人類視覺感知理論(Perception theory),Gestalt這個字是德文的形狀之意,這原則是用來說明人類如何去理解所看到的東西,並將其編碼成資訊。如今這理論可以反向用來做為各種視覺設計的原則,幾乎在平面設計、網站設計、前端設計、簡報設計等等會需要使用者“看”的領域,都有很重要的角色,比如Google Design這部談論設計的影片

Gestalt is the interplay between the parts and the whole. … The whole is ‘other’ than the sum of its parts          

而藉由設計平面上的物件根據這些原則便能添加多一層的資訊給與觀看者。

跟視覺設計有關的這些原則是什麼呢?

這邊我們來介紹一些跟"Grouping"概念有關的原則:相似性(Similarity), 相近性(Proximity), 連結性(Connection),包覆( Enclosure)。以上這四個原則會影響觀看者如何將獨立物件間做分群,

相似性(Similarity)

在閱讀或是觀看者會把外觀相似的事物歸類成同一個類別,會是認定它們間有所關聯,這特質算是我們人類蠻直覺有的視覺理解方式,所以利用相似性原則,我們圖形處理上,利用字型、顏色、物件方向和白色等等來創造視覺上的關聯性。

相近性(Proximity)

相近性的特質是利用空間上的相鄰,把物件關聯再一起,這特性可以讓我們用來安排如論文的圖片排列方式,用來控制觀看者的順序,比如有四張圖,我們希望觀看者兩張兩張的看,那麼經由排列的方式,兩個一組,組間間距加大,便能直覺上使用兩組兩組的看。

連結性(Connection)

相對於相似性、相近性的關聯效果,直接將兩個有關連的物件直接連結(最簡單的方式就是用線相連),可以直接且強烈的把兩個可能有距離或是外觀沒那麼相似的物件,釋放給觀看者兩者間可能有其他關聯性。

包覆(Enclosure)

包覆便是直接將同類或是想強調的物件們,用圖形包圍成塊,這種視覺暗示的方式力道非常強。

原則間效用的大小

下面這張由Bang Wong文章裡的圖,清楚的讓人理解到這些原則間在視覺上創造的效果,彼此間的強烈程度。

screenshot.png

閱讀參考

來自Nature Methods education series Points of View,超棒的系列!對於生醫研究者對於資料視覺化有一定的幫助!
Bang Wong.(2010). Points Of View: Gestalt principles(Part 1/Part 2). Nature Methods

網路上介紹Gestalt principle在網站或是前端設計的文章

Cognitive psychology for UX: 7 Gestalt principles of visual perception
Gestalt Principles for Designers – Applying Visual Psychology to Modern Day Design
User Experience (UX) topic overview/definition :Gestalt Principles

搭建多層式網絡視覺化(visualization of the multilayer network)模型: 使用three.js, d3.js , Lodash 和observable(ㄧ)

screenshot.png

 

用多層次網絡(multilayer network )視覺化多組學資料

最近花了些時間把之前多組學(multi omic)資料分析的結果,往下延伸去做資料視覺化已呈現一些insights,到底該如何呈現一些複雜的觀念,來把高維度的資料,簡化成人眼有感覺的事情(好難啊!),整合了基因調控、基因產物間的互動和基因集的資料,當然,無法只用一張圖來說清楚一整個研究的思維,但總是希望能如提高Edward Tufte所說的data-ink ratio可參閱這篇 ),所以過程等於是一個打掉重做打掉再重做的過程

這設計其實是想要打破單純simple network的問題,因為回答或是用數據來解構生物問題時,常常會有不同層次的系統交疊,如今許多高通量的資料,他經過註解後,其實資料的維度是很高的,會需要用multilayer來把複雜性降低,以便讓想呈現的模式呈現,於是便需要用到multilayer network來架構這樣的multi-omic資料(可參閱這篇),不過話說,在多層次網絡這框架下,其實還很新,所以如何去設計layout背後的演算法,是個新的世界。

解決跨層間連線(between layer links)的視覺化問題

在keep simple的原則下,原本希望用css的transformation特性和d3.js就能完成這最初版本的多層網絡視覺化設計,但後來鑽研許久,把css 裡面的translate3d, rotate3d, perspective等特性來用在由d3.js產出的svg上,從實踐端踩了一遍,遇到蠻多有趣問題的(怪蟲xd)。關鍵在做“跨layer間的線”時會遇到很大的問題,其中一個關鍵是css 在做出3d效果時,所謂z座標的實現化,似乎是處在一個黑盒子,假如要完全模擬出來3d效果,其實就要重新用js改寫這些函數,來自己做這些座標的轉換,因為這樣做有點“重做輪子”的感覺,於是就硬者頭皮進入到webGL的領域,也就是原生的3d世界。

使用three.js來入手webGL的3d世界

老實說,three.js比d3.js更容易入手,這一點超乎我的想像,不過相對於d3.js在data-driven這一塊的設計,three.js就要自己重造視覺模塊跟資料的關聯,畢竟他其實不是為了“資料視覺化”(data-driven)而出現,是為了3d動畫、webVR而出現,但至少光3d的座標,就可以讓我直接使用(x,y,z)來做跨層間的資料處理,省下了一層功。另外,three.js也讓我看到了另外一種可能,因為在d3.js的操作下,很容易遇到速度瓶頸,尤其是在超複雜的視覺化上,速度會到一種慢到想哭的地步,每次render都要花到3-5分鐘,three.js則因為可以使用gpu來做視覺處理,皆有所謂的buffer設計,所以這特性可以好好用來做一些加速使用,甚至GPU運算。

用Observable來做快速prototyping

Mike Bostock新開發的Observalbe工具真的很棒,無痛版的jupyter,且越用越覺得他設計理念很棒,Observalbe基本上可以讓你直接使用各種js library,在上面邊寫邊摸索,且他引入蠻多interactive的概念,所以你可以設計一些reactive的參數,來調整資料,尤其在3d的世界中很重要,你通常要藉由直接嘗試來找到適當的呈現角度。

screenshot

可以看到observable notebook裡面可以設計滑動的參數,來調整觀看角度,因為three.js設計的方式,你會需要設定觀看角度的各種參數,所以使用這互動性的設計就能快速找到合適的觀賞方向。

D3.js的d3.simulation來提供network的layout

screenshot.png

可以看到最頂層的那個網絡是有layout的,這個layout便是使用d3.js 的d3.simulation來做背後計算的,當然這就會產生一些資料延遲的問題,這部分之後詳細分享。