首页 文章

GNUPLOT:boxplots可变线条样式/颜色

提问于
浏览
1

我有多个数据文件,我想绘制一个图 . 每个文件都包含一个包含两个变量的列:true和false . 我想为每个值绘制boxplot,以便可以比较它们 . 数据文件样本如下:

0.6,true
0.7,true
0.5,false
0.4,true
..

我想出了以下代码:

plot inputFile1 using (1):($4):(0.3):3  title 'A' , \
inputFile2 using (3):($4):(0.3):3   title 'B'

这产生了下图:
enter image description here

但是,我想自定义它,使所有带有“true”变量的箱图具有一种特定的线型/颜色,带有“false”变量的箱图具有另一种特定的线型/颜色 . 此外,我想在 Headers 中显示真假的形状,但是,在x-xis上,我希望每个真假对都有文件A和B.

在这方面的任何帮助将受到高度赞赏 .

谢谢你的期待 .

1 回答

  • 1

    使用当前的数据文件,您需要检测第二列是否包含 truefalse 并相应地执行操作 . 但是,我不确定 gnuplot 是否可以处理数据文件中的字符串 .

    如果您处理文件并将 truefalse 替换为1或0,则可以调整以下行:

    plot [0:6] "+" using 0:($0/2.):(0.3):0:xtic((int($0)%2)==0?"true":"false") w errorb lc variable
    

    这里 using 列表中的第4个数字定义颜色,文件的每一行颜色都有 $0 ,但如果颜色编号位于文件的一列,则使用该列 . 将"+"替换为您的文件,将 using 中的前两个数字替换为绘图样式所需的参数 . xtic 命令处理文件中的某些列(此处为行号 $0 ),并根据值标记x tic(请参阅 help ternary ) .

    请注意,您的MWE不能正常工作,如果您想要更精确的答案,请修改它 .

相关问题