【问题标题】:GNUPLOT 4.6: custom contour linesGNUPLOT 4.6:自定义等高线
【发布时间】:2015-05-29 13:23:29
【问题描述】:

关于等高线图的另一个问题。我正在使用

    G N U P L O T
    Version 4.6 patchlevel 6    last modified September 2014
    Build System: Linux x86_64

我正在尝试绘制彩色地图并在其上绘制等高线图。我的终端是

    set terminal pngcairo enhanced size 1440,900 crop font "Palatino,27"

我想画这个

    set contour surface
    set cntrparam level discrete 0.3,0.067
    set style line 2 lt 1 lc rgb "black" lw 3
    set style line 3 lt 3 lc rgb "black" lw 1
    set style increment user
    splot 'file1' binary w pm3d nocontour,\
          'file2'  binary w l  nosurface

所以等高线设置为绘制两条等值线,均是黑色、一条虚线、一条实线、一条粗线、一条细线。它绘制了两条粗细相等的红色实线。

我尝试了许多在 Google 上到处找到的解决方案。

1)我将“设置样式线...”替换为“设置线型...”并删除“设置样式增量用户”行。线条变为黑色、实心、粗细相等。我可以改变颜色。

2) 我尝试添加“set termoption dashed”行。什么都没有,破折号没见过。

我哪里错了?

非常感谢。

【问题讨论】:

  • 您必须使用“set linetype”、“set termopt dashed”,并使用带有所需虚线的线型作为模板。
  • @KarlRatzsch 但这不适用于绘制轮廓。
  • @KarlRatzsch,这正是我在项目符号 2 中尝试并告诉的内容)。它不起作用。
  • 如果没有“虚线”术语选项,gp46 只有一种非常细的虚线线型,即类型“0”。 gp50 有一个新的“dashtype”选项。但是,是的,虚线在轮廓上不能正常工作。那是一个错误。在 3D 绘图下方的基本平面上,您无法获得正确的虚线,但在表面上,Christoph 下面概述的过程可以正常工作。

标签: styles line gnuplot contour


【解决方案1】:

确实,目前您不能为不同的轮廓使用任意线型或样式。更改颜色有效,同时设置一种虚线类型(然后使用第一个轮廓样式),但不能混合虚线和实线并更改线宽。

在这种情况下,您必须将轮廓写入文件,就像您在第一个问题中所做的那样:)

稍后可以使用index 关键字访问不同的等高线级别。但请注意,在第一个数据集中,您将拥有完整的表面,轮廓从 index 1 开始:

set termoption dashed
set contour surface
set cntrparam level discrete 0.3,0.067
set style line 2 lt 1 lc rgb "black" lw 3
set style line 3 lt 3 lc rgb "black" lw 1

set table 'temp.dat'
splot 'file2' binary 
unset table
unset contour

splot 'file1' binary w pm3d nocontour,\
      for [i=1:2] 'temp.dat' index i with lines ls (i+1)

【讨论】:

  • 如果你改变线型,而不是样式,它就可以正常工作。轮廓的问题是破折号,见sourceforge.net/p/gnuplot/bugs/1612
  • @KarlRatzsch 而且你不能为不同的轮廓级别使用不同的虚线图案或线宽
  • 你说得对,“termopt dashed”给出了虚线轮廓(在 gp46 中),但虚线确实无法更改。如果没有明确设置,线宽(也是 v50 中的虚线)取自线型 1。
猜你喜欢
  • 1970-01-01
  • 2019-11-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-10-12
相关资源
最近更新 更多