gnuplot - 如何使zmin等于zmax上的zmax keeeping autoscale

时间:2016-11-17 13:22:19

标签: gnuplot

如何在xy平面上对z轴进行缩放的结果输出:zmax = zmin,保持z轴上的自动缩放开启? (GNUplot 5.0)

resulting graph - 3d-polar.png

在GNUplot中是否存在这种可能性,或者只能使用固定范围的cbrange?

用于极地热图图的示例:

reset
set terminal pngcairo size 800,800
set output '3d-polar.png'
set lmargin at screen 0.05
set rmargin at screen 0.85
set bmargin at screen 0.1
set tmargin at screen 0.9

set pm3d map
unset key
set multiplot

set parametric
set grid xtics ytics

set angles degree
set autoscale xfix
set autoscale yfix
set autoscale zfix
set palette model RGB defined ( 0"black", 1"white", 2"grey")
splot '_FullWV.dat' u ($2*cos($1)):($2*sin($1)):3
unset multiplot

_FullWV.dat文件为here

1 个答案:

答案 0 :(得分:1)

您可以使用stats提取第3列的最小值和最大值,并相应地定义cbrange。

reset
set terminal pngcairo size 800,800
set output '3d-polar.png'
set lmargin at screen 0.05
set rmargin at screen 0.85
set bmargin at screen 0.1
set tmargin at screen 0.9

set pm3d map
unset key
set multiplot

stats '_FullWV.dat' using 3
max(a,b) = (a>b) ? a : b

Z_MAX = max(-STATS_min, STATS_max)

set parametric
set grid xtics ytics

set angles degree
set autoscale xfix
set autoscale yfix
#set zrange [-Z_MAX : Z_MAX]
set cbrange [-Z_MAX : Z_MAX]

set palette model RGB defined ( 0"black", 1"white", 2"grey")
splot '_FullWV.dat' u ($2*cos($1)):($2*sin($1)):3
unset multiplot