我有两对数据集,我需要使用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
答案 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解决方案:
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中为我工作)。