在Gnuplot 4.0中选择线型和颜色

时间:2010-01-15 22:52:17

标签: gnuplot

我有两对数据集,我需要使用Gnuplot进行绘图。

我想要将第一对绘制成红色,一个实体和一个虚线。第二对,我想绘制蓝色,一个实体和一个虚线。

我已经多次尝试set style line,但我无法得到这种确切的行为。我的最后一次尝试(附件)将第一对绘制成红色(实心),将第二对绘制成蓝色(虚线)。

非常感谢任何帮助。

set style line 1 lt 1 lw 3 pt 3
set style line 2 lt 1 lw 3 pt 3
set style line 3 lt 3 lw 3 pt 3
set style line 4 lt 3 lw 3 pt 3
plot 'data1.dat' using 1:3 w l ls 1,\
     'data1.dat' using 1:4 w l ls 2,\
     'data2.dat' using 1:3 w l ls 3,\
     'data2.dat' using 1:4 w l ls 4

7 个答案:

答案 0 :(得分:28)

您需要使用 linecolor 而不是lc,例如:

set style line 1 lt 1 lw 3 pt 3 linecolor rgb "red"

“帮助设置样式行”为您提供更多信息。

答案 1 :(得分:14)

我遇到了这个话题,因为我也在用虚线挣扎(gnuplot 4.6 patchlevel 0)

如果您使用:

set termoption dashed

您发布的代码会相应

相关问题:
但是,如果我想导出一个png: 设置终端png,这不再适用了。任何人都知道为什么?

原来,gnuplots png导出库不支持这个 Possbile解决方案:

  • 可以简单地导出到ps,然后使用pstopng
  • 进行转换
  • 根据@christoph的说法,如果您使用pngcairo作为终端(set terminal pngcairo),它将会起作用

答案 2 :(得分:7)

您还可以在设置终端时设置“虚线”选项,例如:

set term pdf dashed

答案 3 :(得分:7)

以下是语法:

  set terminal pdf {monochrome|color|colour}
                   {{no}enhanced}
                   {fname "<font>"} {fsize <fontsize>}
                   {font "<fontname>{,<fontsize>}"}
                   {linewidth <lw>} {rounded|butt}
                   {solid|dashed} {dl <dashlength>}}
                   {size <XX>{unit},<YY>{unit}}

和一个例子:

set terminal pdfcairo monochrome enhanced font "Times-New-Roman,12" dashed

答案 4 :(得分:4)

编辑:对不起,这不适合你。我记得4.2中的线条颜色。我在过去遇到过这个问题,我的修复是升级gnuplot。

您也可以使用设置样式线控制颜色。 “lt 3”会给你一个虚线,而“lt 1”会给你一个实线。要添加颜色,可以使用“lc rgb'color'”。这应该做你需要的:


set style line 1 lt 1 lw 3 pt 3 lc rgb "red"
set style line 2 lt 3 lw 3 pt 3 lc rgb "red"
set style line 3 lt 1 lw 3 pt 3 lc rgb "blue"
set style line 4 lt 3 lw 3 pt 3 lc rgb "blue"

答案 5 :(得分:3)

您可能希望查看Pyxplot绘图包http://pyxplot.org.uk,它具有与gnuplot非常相似的语法,但清除了粗糙的边缘。它可以非常整齐地处理颜色和线条样式,并且在x11和eps / pdf终端之间均匀处理。

上面要执行的操作的Pyxplot脚本将是:

set style 1 lt 1 lw 3 color red
set style 2 lt 1 lw 3 color blue
set style 3 lt 2 lw 3 color red
set style 4 lt 2 lw 3 color blue
plot 'data1.dat' using 1:3 w l style 1,\
  'data1.dat' using 1:4 w l style 2,\
  'data2.dat' using 1:3 w l style 3,\
  'data2.dat' using 1:4 w l style 4`

答案 6 :(得分:2)

我知道这个问题已经过时但我发现这非常有用http://www.gnuplot.info/demo_canvas/dashcolor.html。所以你可以单独选择linetype和linecolor,但你必须在#34; set termoption dash&#34;之前设置所有内容。 (在gnuplot 4.4中为我工作)。