我正在尝试使用datasetB的等高线图创建datasetA的色彩图,这两个图都是从文件中读取的。
以下成功创建了datasetA的色彩映射:
plot 'valuesA.dat' matrix with image
我可以按照here描述绘制轮廓。
如何合并这两个图?
提前致谢!
答案 0 :(得分:1)
要回答这个问题,请在gnuplot tricks处理。
答案 1 :(得分:1)
以下是我最终为大小为512x512(例如)的数组做的。假设我有一个数据文件A.dat
,用于色图,B.dat
用于轮廓。
B.dat
创建一个包含轮廓数据的表格,并将其保存到临时文件temp.dat
。A.dat
绘制色彩映射,并在单个命令中绘制临时文件temp.dat
中的等高线。 这是我的代码(为了清晰起见,有些简化):
# Set initial state
reset
set term X11
set palette @MATLAB # see http://www.gnuplotting.org/matlab-colorbar-with-gnuplot/
# Create a file for contour data
set contour base
set cntrparam levels 25
set isosample 250,250
unset surface
set table "temp.dat"
splot "B.dat" binary array=512x512 format='%double'
unset table
# Plot the final results
set title "Contours and Colormap"
set size square
unset key
set xtics ('0' 0, '0.5' 255, '1.0' 511) # Change these according to your dimensions
set ytics ('0' 0, '0.5' 255, '1.0' 511) # Change these according to your dimensions
set cbrange [0.0:1.0]
set xlabel "X (scaled by height)"
set ylabel "Z (scaled by height)"
set terminal png
set output "output.png"
plot "A.dat" binary array=512x512 format='%double' with image, "temp.dat" with lines lt -1
要查看它的外观,我最终使用该代码的脚本版本为我的研究生成this movie(和其他人)!