最近在學(xué)習(xí)Tableau,發(fā)現(xiàn)這是一個強(qiáng)大的BI工具, 只需要簡單的拖拉拽以后就可以生成看上去很高大上的數(shù)據(jù)圖表,感覺就一個字:牛逼!
但是我發(fā)現(xiàn)在碰到一些問題的時候,如果不掌握或者了解它的一內(nèi)部原理和邏輯的話,也很容易掉進(jìn)坑里。所以了解它的內(nèi)部原理還是很有必要的。既然要學(xué)習(xí)它的內(nèi)部原理,首選當(dāng)然是官方文檔,但是全英文的文檔有時候讓人讀得云里霧里,所以我想把它翻譯一下,既方便想學(xué)習(xí)這個軟件的同學(xué),也加深我自己的了解。
英語好的同學(xué)請自行前往原官網(wǎng)地址:Dimensions and Measures。
如果你認(rèn)為有些地方翻譯不對,歡迎指出,共同學(xué)習(xí)!
以下是自己在學(xué)習(xí)一段時間以后對度量和維度的理解,相對通俗易懂一點(diǎn),特此補(bǔ)充。
tableau中的維度和度量,很多人一開始接觸的時候可能會容易混淆,但是這兩個概念是tableau用于組織數(shù)據(jù)的基礎(chǔ),所以清楚的理解它們是很重要的。
其實(shí)這兩個概念很好區(qū)分,維度相對簡單,大家經(jīng)常看到,度量稍微生僻一點(diǎn),大家可能會把它讀作(dù liáng),后來我發(fā)現(xiàn)應(yīng)該讀作dù liàng,其中的“量”就是數(shù)量的意思,舉個栗子,一個部門中年齡為25歲的人有5個,那么25其實(shí)就是維度,5是度量,5代表在“25歲”這個維度上統(tǒng)計(jì)出來的數(shù)量,所以叫度量。準(zhǔn)確地區(qū)分這兩個概念可以讓我們對數(shù)據(jù)進(jìn)行劃分時更加清晰快捷。
當(dāng)你連接到一個數(shù)據(jù)源的時候,Tableau將每個字段分配為以下兩種數(shù)據(jù)角色:Dimensions(維度)或者M(jìn)easures(度量)。這些分配方式會如何影響我們使用Tableau來分析數(shù)據(jù)呢?
Dimensions
當(dāng)你連接到你的數(shù)據(jù)源的時候,Tableau將離散類型的字段(例如:值類型是字符串或者布爾值的字段)分配到Dimensions中。
當(dāng)你將Dimensions中的字段點(diǎn)擊或拖拽進(jìn)入行或者列當(dāng)中時,Tableau就創(chuàng)建了行或列的標(biāo)題。
當(dāng)你從Dimensions中拖出一個字段放入到一個視圖中時,Tableau都會將它默認(rèn)為是離散型的,同時為其分配一個藍(lán)色的背景。因此,一個區(qū)分 Dimensions 與 Measures的簡單方法就是看他們的背景(雖然這個方法很有可能出錯)。但是日期類型和數(shù)字類型的字段既可以是Dimension,也可以是Measure。并且所有的measure既可以是離散的,也可以是連續(xù)的。字段的背景顏色如果是藍(lán)色,說明它是離散的,如果是綠色,說明它是連續(xù)的。
當(dāng)你將一個Dimension拖到行或列中時,你可以將這個字段改為Measure,只需要點(diǎn)擊字段并選擇Measure。然后你就會發(fā)現(xiàn)視圖中出現(xiàn)一根軸而不再是之前的以字段的值為標(biāo)題的表格。并且字段的背景會變成綠色:
如果你想把一個Dimension變成連續(xù)的(不將它轉(zhuǎn)變?yōu)镸easure),方法會比較少,能做到的只有日期dimension,因?yàn)橹挥腥掌谧侄渭瓤梢允请x散的也可以是連續(xù)的,但是通常日期是被看做dimension的。數(shù)字型的字段也可以,但是包含字符串的字段就不行。
Tableau并不會聚合dimensions。如果你想要聚合一個字段的值,這個字段必須是measure。如果你想要將一個Dimension轉(zhuǎn)換為Measure, Tableau總是會提示你給這個dimension分配一個聚合方式(例如求和,平均值等等)。聚合意味著通過多個值獲得一個結(jié)果,例如計(jì)算數(shù)值的個數(shù),或者是它們的平均值,或者是取它們的最小值。請查看相應(yīng)的Aggregation頁面來了解不同的類型的聚合方式的含義。
在Tableau的查詢中,Dimensions是以SQL中的“Group By”的方式來呈現(xiàn)的。
Measures
當(dāng)你連接到某個數(shù)據(jù)源的時候,Tableau會將包含數(shù)字信息的字段分配到Measure上。
當(dāng)你拖拽一個Measure字段到行或者列上時,Tableau會創(chuàng)建一根連續(xù)的軸:
任何從Measures上拖到視圖中的字段默認(rèn)都會是連續(xù)的,它的背景色也將會是綠色。但是如果你點(diǎn)擊字段并選擇Discrete(離散),這些相應(yīng)的值就會變成欄目投的標(biāo)題。
Tableau繼續(xù)聚合字段的值,因?yàn)榧词惯@個字段現(xiàn)在看起來是離散的,它也是一個Measure,而Tableau會一直聚合Measure。如果你愿意你也可以將這個字段轉(zhuǎn)變?yōu)镈imension。那樣的話Tableau就不會再聚合該字段的值了。關(guān)于將Measure轉(zhuǎn)換為Dimension的內(nèi)容請參考這里。
在視圖中通過外觀區(qū)分dimension和measure
如果你再一個表中無法確定某個字段是dimension還是measure,下面是一個簡單的方法:Measure是被聚合過的,Dimension就沒有。
但是也有例外:
1.如果整個視圖都選擇了不進(jìn)行聚合,那么,所有的字段都不會進(jìn)行聚合。關(guān)于不整合數(shù)據(jù),請參考Disaggregating Data。
2.如果你使用的數(shù)據(jù)源是多維度的,數(shù)據(jù)源內(nèi)部已經(jīng)將字段聚合過了,那么Measure是不會顯示這個聚合過程的。
更多信息請前往: