我正在尝试使用多色图在等高线图上叠加曲线,这是我的gnuplot脚本。
set term postscript enhanced color 'Times-Roman,24'
set output 'cimax_pmf.eps'
set encoding iso_8859_1
set nokey
set xlabel 'RC(\305)'
set xrange [0:12]
set yrange [0.2:1]
set ylabel 'c^2_{imax}'
set y2label 'PMF (kcal/mol)'
set y2range [-20:1]
set multiplot
set pm3d map interpolate 10,10
set view map
set isosamples 10 #increase resolution
set palette rgb 33,13,10 #rainbow color scheme
unset colorbox
splot[0:12][0.2:1] 'cisq_rrr_reduced.dat' u 1:2:3 notitle
unset map
plot[0:12] 'final_pmf.dat' u 1:2 w line lt 2 lw 2 notitle axis x1y2
unset multiplot
有一点要提到的是我有两个垂直的y轴,正如我的脚本中的“axis x1y2”所示。问题是在运行此脚本后,我发现第二个绘图未正确对齐第一个绘图。换句话说,它们具有不同的尺寸,并且它们的重叠似乎是有问题的。它看起来像本页第一个图中描述的问题 http://lowrank.net/gnuplot/plot3-e.html#5.10
但是我无法通过使用类似于该页面的脚本来解决这个问题。
感谢。
答案 0 :(得分:1)
我对彼此相邻或相邻的多个情节比较熟悉,但不过有两件事可能对你有帮助:
答案 1 :(得分:1)
我建议不要使用pm3d
和multiplot
,而是使用plot … with image
。这样,您就可以使用单个plot
命令。
如果我没有犯任何错误,只需将您的代码更改为(multiplot
之前的所有内容不变):
[…]
set y2range [-20:1]
set palette rgb 33,13,10 #rainbow color scheme
unset colorbox
plot\
'cisq_rrr_reduced.dat' w image notitle,\
'final_pmf.dat' u 1:2 w line lt 2 lw 2 notitle axis x1y2
答案 2 :(得分:0)
您可以使用gnuplot通过set table
将轮廓数据保存到文件中的功能(请参阅文档,而不是隐式示例here)。类似的东西:
...
set table 'contours.dat'
splot[0:12][0.2:1] 'cisq_rrr_reduced.dat' u 1:2:3 notitle
unset table
plot[0:12] 'final_pmf.dat' u 1:2 w line lt 2 lw 2 notitle axis x1y2, \
'contours.dat' using 1:2
根据您的情况进行调整。