我想在每个图的顶部使用两个不同的调色板绘制两个二维图,一个在另一个图的顶部(我的总体目的是用这些图片制作两个分布的动画)。我写了以下代码段,它们基本上是multiplot
的两个面板,彼此顶部
CMD = "rm -f *.png && echo 'Initializing...'"
system(CMD)
set terminal pngcairo
PATH = '../RUNS/ZRU_0016/'
i = 900
mincb = -16
maxcb = 0
set cbrange[mincb:maxcb]
set xrange[0:201]
set yrange[0:201]
unset key
set ylabel "j"
set xlabel "i"
# This functions gives the name of the snapshot file
snapshot(i) = sprintf("snapshot_%04d.dat", i)
#-------------------------------------------------------------
set margins screen 0.1, screen 0.85, screen 0.1, screen 0.9
set output sprintf('%07d.png', i)
set yrange[0:201]
set multiplot
mincb = -12
maxcb = 0
set cbrange[mincb:maxcb]
load 'jet.pal'
plot PATH.'snapshots/'.snapshot(i) using 1:2:(log10($4)>mincb?(log10($4)):mincb) with lines palette lw 3, \
PATH.'data_main_ddnls_twod_mlce.dat' u 10:11 every ::i::i w p pt 7 lc 'black' notitle
mincb = -8
maxcb = 0
set cbrange[mincb:maxcb]
load 'greys.pal'
plot PATH.'snapshots/'.snapshot(i) using 1:2:(log10($5)>mincb?(log10($5)):mincb) with lines palette lw 3, \
PATH.'data_main_ddnls_twod_mlce.dat' u 12:13 every ::i::i w p pt 7 lc 'black' notitle
unset multiplot
如您所见,加载了jet.pal
(matlab默认的配色方案)的第一个发行版应该看起来很光亮,但是似乎被第二个发行版所掩盖的浅灰色(不用担心颜色栏)。 >
如何在情节上使两个分布正确?
答案 0 :(得分:1)
您能否阐明数据文件的格式?出乎意料的是,您正在绘制“带线”图,因为热图通常是在pm3d模式下绘制的,或者使用“带有图像”图。在这两种模式中,您都可以使用以下命令将部分透明度分配给组成像素:
set style fill transparent solid 0.5 noborder
这将允许第一个绘制的图显示通过第二个图。