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