在之前的文章,我們介紹了如何使用histograms
來構建普通的柱狀圖,今天看下如何構建堆積柱狀圖。
先來看一個堆積柱狀圖的例子
對應的數據如下:
和普通的柱狀圖相比,堆積柱狀圖只不過是第4列有多個value, 多個value 之間用逗號分隔。
配置文件的寫法如下:
大部分屬性和常規的柱狀圖是完全一樣的,需要注意的是其賦值的寫法。比如fill_color
, 可以看到是逗號連接的5個顏色。對應file
中的5個value。
對于fill_color
和thickness
這兩個屬性來說,其值既可以是一個值,也可以是逗號連接的多個值。其值為一個是,代表所有的柱子屬性都一樣;為多個值時,用逗號連接,每個柱子對應一個屬性;如果屬性個數比value個數少是,會自動循環。
下圖中有每個bin
有5個柱子,但是fill_color
只有兩個值,此時填充色的值自動循環,變成 red, black,red,black,red
。
thiockness
在堆積柱狀圖中有了新的用途,可以看作每個柱子邊框的粗細程度,其值越大,在圖中柱子之間的間隔就越大。
在下圖中,可以看到隨著thickness
的增大,不僅柱子之間的間隔變大了,對應的填充色的區域整體都縮小了一圈。
在堆積柱狀圖中,有一個獨有的屬性sort_bin_values
, 表示是否根據value的大小調整柱子的高度,默認值為no
, 柱子的順序按照file
文件中指定的順序,第一個value 對應最底部的柱子。當取值為yes
時,柱子的順序會打亂,value
最大的柱子在最底部。示意圖如下:
除了填充色之外,還可以設置pattern
屬性,用法如下
pattern ? ?= vline,hline,solid,checker,solid
效果圖如下:
pattern
的作用就是設置填充的樣式,比如斜線填充等樣式。