1
我試圖用一個只包含0或1的簡單數據文件(.example
)構建一種條形圖。這裏包含的數據.example
:Gnuplot - 用兩個命令迭代
dest P1 P2 P3 P4 P5 NA
D1 0 1 1 0 0 0
D2 0 0 1 0 0 0
D3 0 1 0 1 0 0
""
GPV 1 1 1 1 1 1
,這裏是我使用的代碼:
set style histogram rowstacked title textcolor lt -1
set datafile missing 'nan'
set style data histograms
plot '.example' using ($2==0 ? 1 : 0) ls 17 title 'NA', \
'' using ($2==1 ? 1 : 0) ls 1, \
for [i=3:5] '.example' using (column(i)==0 ? 1 : 0) ls 17 notitle, \
for [i=3:5] '' using (column(i)==1 ? 1 : 0) ls i-1
其中最後兩個命令遍歷一個潛在的大量 列堆疊白色或彩色的取決於column(i)
的值。要保持直方圖中不同列的顏色順序相同,我需要將兩個迭代合併爲一個包含兩個命令的迭代。
可能嗎?有關如何做到這一點的任何建議?
嗨,謝謝你的幫助。您提出的解決方案對我來說是完美的,但實際上'列'只能與'使用'一起使用,而不能與'ls'或'標題'規範一起使用。另外,嵌套循環並沒有真正的幫助,因爲正確理解我需要基於數據中的0或1讀取來指定'ls'。 –
對不起,我無法測試該命令,因爲您沒有發佈示例數據文件(下次嘗試這樣做)。我會用不同的解決方案解決我的問題。 – Miguel
此外,在將來,請嘗試將問題降低到與實際問題相關的最小值,例如刪除示例中其他文件的繪圖。這使得它更容易引起人們的注意,因爲我們需要更少的時間和精力來閱讀和理解問題。 – Miguel