在gnuplot4.0中选择线型和颜色

在gnuplot4.0中选择线型和颜色,gnuplot,Gnuplot,我有两对数据集,需要使用Gnuplot绘制 我想把第一对画成红色,一个实心,一个虚线。第二对,我想用蓝色绘制,一个实心,一个虚线 我已经尝试了几次设置样式行,但我无法得到这种精确的行为。我的最后一次尝试(附件)以红色(实线)绘制第一对,以蓝色(虚线)绘制第二对 任何帮助都将不胜感激 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 li

我有两对数据集,需要使用Gnuplot绘制

我想把第一对画成红色,一个实心,一个虚线。第二对,我想用蓝色绘制,一个实心,一个虚线

我已经尝试了几次
设置样式行
,但我无法得到这种精确的行为。我的最后一次尝试(附件)以红色(实线)绘制第一对,以蓝色(虚线)绘制第二对

任何帮助都将不胜感激

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

编辑:对不起,这对你不起作用。我只记得4.2中的线条颜色。我在过去遇到过这个问题,我的解决办法是升级gnuplot

也可以使用“设置样式线”控制颜色。“lt 3”将为您提供一条虚线,“lt 1”将为您提供一条实线。要添加颜色,可以使用“lc rgb‘颜色’”。这应该满足您的需要:


将样式行1 lt 1 lw 3 pt 3 lc rgb设置为“红色”
将样式行2 lt 3 lw 3 pt 3 lc rgb设置为“红色”
将样式线3 lt 1 lw 3 pt 3 lc rgb设置为“蓝色”
设置样式线4 lt 3 lw 3 pt 3 lc rgb“蓝色”

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

设置样式行1 lt 1 lw 3 pt 3 linecolor rgb“红色”


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

我知道这个问题很老,但我发现它非常有用。因此,您可以分别选择线型和线颜色,但必须在所有内容之前加上“set termoption dash”(在gnuplot 4.4中对我很有用)。

我遇到过这个主题,因为我也在努力使用虚线(gnuplot 4.6 patchlevel 0)

如果您使用:

set termoption dashed
您发布的代码将相应地起作用

相关问题:
但是,如果要导出png,请使用: 设置终端png,这不再有效。有人知道为什么吗

事实证明,gnuplots png导出库不支持此功能。
可能的解决方案:

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

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

set term pdf dashed

您可能想看看Pyxplot绘图包,它的语法与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`
以下是语法:

  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}}

不幸的是,据我所知,Gnuplot 4.0中没有lc,您无法使用x11术语指定线型。我使用的是gnuplot 4.4,无论选项如何(当然还尝试了线型),我从未成功地画出一条直线……经过一些研究,gnuplot png导出库不支持这一点。然而,你可以简单地导出到ps,然后用pstopng转换它。
png
终端(使用
libgd
)不支持,但是
pngcairo
终端支持虚线。他询问的是Gnuplot 4.0,它没有移动“rgb”红色“语法链接:链接再次过期。。。这将延长工作时间:
  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