使用第二个数据文件在Gnuplot中绘制色彩映射边界

时间:2016-06-15 15:44:12

标签: gnuplot overlay contour colormap

我有一个格式为(x y D)的ASCII数据文件(density.dat),其中D表示点(x,y)处的密度值,我从中创建了一个色彩映射:

   set pm3d interpolate 2,2 corners2color mean
   set view map
   splot data_file u (1e9*$1):(1e9*$2):3 with pm3d

我有第二个数据文件(potential.dat)具有相同的格式(x y P),其中P表示一个潜在的值,它只能有两个值中的一个为零或1.0(比方说)。我想指出(三个)区域(一个有轻微扰动的直线)和电位为零的区域之间的边界,并将其覆盖在密度的第一个色图上。

我虽然可以在另一个文件(类似于here)的图上绘制一个文件的轮廓,但是使用'set table filename'导出的数据不能用于'plot带有图像的文件名'似乎。

我非常感谢解决这个问题的想法(或解决方案......)。

========编辑========== 为我工作的解决方案:

    set contour base
    set cntrparam level discrete 1.0

    splot density_file u 1:2:3 with pm3d nocontour,\
          potential_file u 1:2:3 w l nosurface

1 个答案:

答案 0 :(得分:0)

在您提供的链接中,with image用于绘制颜色贴图,而不是等值线,这些是绘制的with lines。我不知道为什么你需要通过一个表,似乎你可以使用splot命令来处理所有事情,除非你想进行花哨的自定义或具有强大的约束与边距控制。请参阅帖子顶部的讨论 http://gnuplot-tricks.blogspot.co.uk/2009/07/maps-contour-plots-with-labels.html

如果您想要更精确的答案,则需要在帖子中提供更多详细信息。