2014-09-26 64 views
2

我想绘制一个正常的热图/图像,而不是每个数据点的正方形都有一个三角形(实际上是两个三角形,因此将正方形分成两部分,但是一旦下面的部分会变得微不足道解决了)。我首先看了gnuplot演示,并且有一些接近what I want的三角形示例,但不够近。gnuplot中基于​​三角形的图像

所以,这是我得到的,现在我有几个问题。

通过在数据文件中输入每个三角形的所有坐标,可以绘制三角形而不是正方形。三角形的相应的坐标这样

 C 
    /| 
/| 
/| 
/ | 
/____| 
A B 

并且这些在输入到数据文件如下

Ax Ax Z 
Bx By Z 

Cx Cy Z 
Cx Cy Z 

因此具有三个三角形的示例数据文件是(注意每个三角形之间的两行)

0.6 0.6 1 
1.4 0.6 1 

1.4 1.4 1 
1.4 1.4 1 


1.6 0.6 2 
2.4 0.6 2 

2.4 1.4 2 
2.4 1.4 2 


2.6 0.6 3 
3.4 0.6 3 

3.4 1.4 3 
3.4 1.4 3 

其产生图像

like this

两个问题:

  1. 即使三角形实际上绘制非常接近0.5,1.5,2.5等。我不得不选择0.4/6在数据文件中,否则三角形重叠值(它们仍然重叠,但是在纸上打印时它们是不可见的)。和
  2. 三角形右上角的一个奇怪凹痕。

所以,我基本上想知道1(但不介意,因为我很高兴与非常小的重叠),并想修复2,这样一个很好的三角形绘制。

回答

1

看来,postscript终端为每个pm3d多边形绘制了一个额外的边框(不知道为什么)。只需设置一个小线宽(将其设置为0将被忽略)。

使用校正后的数据文件(使用0.5,1.5和2.5)等

0.5 0.5 1 
1.5 0.5 1 

1.5 1.5 1 
1.5 1.5 1 


1.5 0.5 2 
2.5 0.5 2 

2.5 1.5 2 
2.5 1.5 2 


2.5 0.5 3 
3.5 0.5 3 

3.5 1.5 3 
3.5 1.5 3 

并用

set pm3d map 
set xrange [0:50] 
set yrange [0:50] 

set terminal postscript eps color 
set output 'foobar.eps' 
splot 'file.txt' lw 0.1 

绘制它工作得很好:

enter image description here

+0

糟糕的,是非常抱歉,你是对的,我正在绘制像这样的'splot'file.txt'w pm3d'。我只是按照你的建议尝试过,它的工作原理与你所说的一样。但是,例如,如果将x和y范围都更改为'[0:50]',则放大时会出现明显重叠,并且会再次出现小凹痕。我正在使用终端'后记eps增强颜色固体'。也许准确度有限(虽然这对于矢量格式来说确实没有意义)? – James 2014-09-26 08:37:51