Gnuplot:使用矩阵格式的4d彩色图

时间:2011-06-29 16:42:15

标签: graph charts gnuplot

我知道对于4d彩色图(3d表面,颜色由第4个字段给出),我可以使用格式为

的数据文件
# X Y Z C
  1 1 0 4
  1 2 1 3

  2 1 4 2
  2 2 4 5
  ...

然后使用

set pm3d
splot "datafile.dat" u 1:2:3:4 with pm3d

另一方面,我知道如何制作一个简单的曲面图,其中X和Y值是隐式的,而Z值是矩阵格式:

#Z DATA ONLY
0 1
4 4

splot "datafile.dat" matrix 

有没有办法用这种矩阵格式制作4d彩色图?例如,从一个文件中获取Z数据和从另一个文件中获取相应的颜色数据,或者将Z值和颜色组合成矩阵格式的单个文件?

2 个答案:

答案 0 :(得分:1)

如果我正确理解了这个问题,这似乎是可能的。请参阅以下示例。

  1. http://www.gnuplotting.org/tag/matrix/

      

    我们需要创建这样一个情节的是image情节风格,以及   当然,数据必须采用适当的格式。假设如下   矩阵,表示测量的z值。

    0 1 2 3 4 3 2 1 0
    0 1 2 3 4 3 2 1 0
    0 1 2 3 4 3 2 1 0
    0 1 2 3 4 3 2 1 0
    0 1 2 3 4 3 2 1 0
    0 1 2 3 4 3 2 1 0
    0 1 2 3 4 3 2 1 0
    0 1 2 3 4 3 2 1 0
    0 1 2 3 4 3 2 1 0
    
         

    为了用不同的灰色色调绘制这些值,我们   指定相应的palette。另外我们应用上述内容   提到image绘图样式和matrix格式选项。结果是   如图2所示。

    set palette grey
    plot 'color_map.dat' matrix with image
    
         

    z values with color

  2. http://gnuplot.sourceforge.net/demo/heatmaps.html

    #
    # Two ways of generating a 2D heat map from ascii data
    #
    
    set title "Heat Map generated from a file containing Z values only"
    unset key
    set tic scale 0
    
    # Color runs from white to green
    set palette rgbformula -7,2,-7
    set cbrange [0:5]
    set cblabel "Score"
    unset cbtics
    
    set xrange [-0.5:4.5]
    set yrange [-0.5:4.5]
    
    set view map
    splot '-' matrix with image
    5 4 3 1 0
    2 2 0 0 1
    0 0 0 1 0
    0 0 0 2 3
    0 1 2 4 3
    e
    e
    
         

    Heat map generated from a file only containing z values

答案 1 :(得分:0)

我不认为这是原来的问题。

我的理解是他想在3d空间中绘制彩色球体,这样XYZ就是坐标,C就是颜色强度。是这种情况吗?