GNUPLOT:带有绘图和调色板的对数颜色框

Up-*_*tah 3 gnuplot

我正在努力解决以下问题.我有一个包含三列的文件x-coord,y-coord和count; 将其视为稀疏直方图,其中只有在输出时才输出一个点count > 0.

我想用GNUPLOTvia 来想象它

set palette defined (0 'white', 0.25 'blue', 0.5 'green', 0.75 'yellow', 1 'red')
plot 'file' w p pt 7 palette t ''
Run Code Online (Sandbox Code Playgroud)

哪个工作得很好.现在,我想有一个对数颜色框,这样就可以将颜色映射到log(count).我可以欺骗它u 1:2:(log($3)),但颜色盒上的比例将会关闭.

使用set log cb实际上给了我一个错误:GNUPLOT抱怨数据是负数,而不是,我已经手动检查了有问题的文件.这是我从文件的简化版本中得到的错误,

gnuplot> set logscale cb
gnuplot> plot 'data.dat' w p pt 7 palette
Warning: empty x range [-0.226728:-0.226728], adjusting to [-0.228995:-0.22446]
         color axis has cb coord of -3.20125; must be above 0 for log scale!
Run Code Online (Sandbox Code Playgroud)

数据文件实际上非常小:

-2.2672752051521861e-01 -9.0322580645161288e-01  1.2583021897450098e-03
-2.2672752051521861e-01 -8.3870967741935487e-01  1.2583021897450098e-02
-2.2672752051521861e-01 -7.7419354838709675e-01  6.2915109487250492e-03
-2.2672752051521861e-01 -7.0967741935483875e-01  1.0066417517960079e-02
-2.2672752051521861e-01 -6.4516129032258063e-01  1.0066417517960079e-02
-2.2672752051521861e-01 -5.8064516129032262e-01  3.7749065692350295e-03
-2.2672752051521861e-01 -5.1612903225806450e-01  6.2915109487250492e-03
-2.2672752051521861e-01 -4.5161290322580649e-01  2.5166043794900197e-03
-2.2672752051521861e-01 -3.8709677419354838e-01  4.4040576641075340e-03
-2.2672752051521861e-01 -3.2258064516129037e-01  2.5166043794900197e-03
-2.2672752051521861e-01 -2.5806451612903225e-01  1.2583021897450098e-03
-2.2672752051521861e-01 -1.9354838709677424e-01  3.1457554743625246e-03
-2.2672752051521861e-01 -1.2903225806451613e-01  6.2915109487250492e-04
-2.2672752051521861e-01 -6.4516129032258118e-02  1.2583021897450098e-03
-2.2672752051521861e-01  0.0000000000000000e+00  4.4040576641075340e-03
-2.2672752051521861e-01  6.4516129032258007e-02  1.2583021897450098e-03
-2.2672752051521861e-01  1.2903225806451601e-01  1.8874532846175148e-03
-2.2672752051521861e-01  1.9354838709677424e-01  3.1457554743625246e-03
-2.2672752051521861e-01  3.2258064516129026e-01  1.2583021897450098e-03
-2.2672752051521861e-01  3.8709677419354827e-01  2.5166043794900197e-03
-2.2672752051521861e-01  4.5161290322580649e-01  3.7749065692350295e-03
-2.2672752051521861e-01  5.1612903225806450e-01  5.6623598538525447e-03
-2.2672752051521861e-01  5.8064516129032251e-01  6.2915109487250492e-03
-2.2672752051521861e-01  6.4516129032258052e-01  6.9206620435975537e-03
Run Code Online (Sandbox Code Playgroud)

怎么了?

Chr*_*oph 6

这似乎是关于对数色轴自动缩放的错误.cbrange使用4.6.4 设置显式可以正常工作.在这种情况下,您还可以使用该stats命令提取最小值.

以下脚本有效:

set palette defined (0 'white', 0.25 'blue', 0.5 'green', 0.75 'yellow', 1 'red')
stats 'file' using 3
set logscale cb
set cbrange[STATS_min:STATS_max]
plot 'file' w p pt 7 palette t ''
Run Code Online (Sandbox Code Playgroud)

4.6.4的结果是:

在此输入图像描述