GnuPlot中的绝对调色板

时间:2016-12-25 14:29:15

标签: gnuplot

我正在做的是分散绘制分子中的原子。不同颜色的不同颜色与调色板定义如上,但如果我没有分子中的那些元素之一,Gnuplot只是重新调整整个配色方案,分子看起来像垃圾。

有没有办法可以确定1是一种颜色,2是颜色,3是颜色等,而不必为我绘制的每个分子重新定义cbrange或调色板?换句话说,这些整数中是否存在任何一个整数。

3 个答案:

答案 0 :(得分:0)

maxcolors设置为不同原子的数量。使用set palette defined指定颜色。通过设置cbrange避免重新缩放。

以下脚本具有原子类型1到6的颜色,但数据仅包含正确显示的原子类型1到4:

set palette maxcolors 6
set palette defined (1 "#ff0000", 2 "#00ff00", 3 "#0000ff", \
                     4 "#ffff00", 5 "#00ffff", 6 "#ff00ff" )
set cbrange [0.5:6.5]


set xrange [0:5]
set yrange [0:2]

plot "-" notitle ls 5 ps 3 lc palette         
1 1 1
2 1 2
3 1 3
4 1 4

colors set independent from data range

可以使用unset colorbox删除颜色框。

答案 1 :(得分:0)

使用linecolor variable将数据文件中的值用作linetype:

set linetype 1 lc rgb "#ff0000"
set linetype 2 lc rgb "#00ff00"
set linetype 3 lc rgb "#0000ff"

$data << EOD
1 3 1
2 2 2
3 1 3
EOD
plot $data using 1:2:3 linecolor variable

答案 2 :(得分:0)

设置maxcolors就可以了。感谢您查看即使我忘记发布代码!