【发布时间】:2014-05-14 09:31:36
【问题描述】:
我google了之后没有回答这个问题。
我有这样的 data.txt:
a b c
sys1 3 2 0
sys2 4 4 4
sys3 5 2 4
sys4 6 4 1
我使用带有模式的 rowstacked 样式创建图形,目前我手动选择模式。我必须用 sys1-sys4 和 a-c 绘制我的 data.txt。这个矩阵总是有相同的大小,但我应该用不同的顺序进行排序和重新生成。
这是我的 gnuplot 脚本:
set term pos eps font 20
set style data histogram
set style histogram rowstacked
set key invert reverse right outside # above outside or left outside
set boxwidth 0.75
set ylabel "Count"
set xlabel "System"
set xtics nomirror rotate by -270
set output 'eps/a1-count.eps'
plot 'a1-count' \
using($2):xtic(1) title "data 1" lt -1 fs pattern 3, \
'' using($3) title "data 2" lt -1 fs pattern 4, \
'' using($3) title "data 3" lt -1 fs pattern 6
这是输出:
我还找到了一些解决方案here,但它适用于热图。任何人都可以帮助我吗?
非常感谢!
【问题讨论】:
-
对不起,我不明白你的问题。生成的图像应该如何?你想要'a'等作为关键条目,还是其他什么?
-
@Christoph 我必须使标签动态化。因为我以某种方式对数据进行排序。顺序可以是 [sys3, sys4, sys2, sys1],取决于数据。你明白我的意思吗?
-
嗯,xticklabels 是动态的。但是您也在谈论列名...您希望它们用作图例条目吗?
-
@Christoph:是的,因为我的实际数据没有图例条目。作为我的脚本: using($2):xtic(1) title "data 1" lt -1 fs pattern 3, \ 我使用了标题“data 1”(不是来自表数据)。但在这种情况下,我也想订购模式统计。即:第一列使用模式 3,第二列使用模式 6,等等。对此@Christoph 有什么想法吗?
标签: graph gnuplot stacked-chart