使用第二个数据文件在 Gnuplot 中的颜色图上绘制边界

Draw boundary on colormap in Gnuplot using second data file

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

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

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

虽然我将一个文件的等高线绘制在另一个文件的图上的方法(类似于 here)可行,但使用 'set table filename' 导出的数据不能用于'plot filename with image'好像是。

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

========编辑========== 对我有效的解决方案:

    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

在您给出的 link 中,with image 用于绘制彩色图,而不是等值线,这些是绘制的 with lines。我不确定你为什么需要通过 table,似乎你可以用 splot 命令处理所有事情,除非你想进行花哨的定制或对保证金控制有严格的限制。请参阅 post 顶部的讨论 http://gnuplot-tricks.blogspot.co.uk/2009/07/maps-contour-plots-with-labels.html

如果您想要更准确的答案,您需要在 post 中提供更多详细信息。