阅读this和this回答我明白改变每一点的颜色是可能的,但是:
必须使用set palette model RGB defined ()
来定义它
如果我想要100种不同颜色,我将不得不定义所有颜色
在绘制点之前指定点的颜色。
我的问题是,有没有办法避免上述所有情况,例如修改我的数据文件如下:
x y z R G B
1 2 3 0 255 255
5 6 2 255 0 0
并使用指定的颜色绘制相应的点?
答案 0 :(得分:4)
在gnuplot 4.6 +上尝试以下内容:
rgb(r,g,b) = 65536 * int(r) + 256 * int(g) + int(b)
plot "data.dat" using 1:2:(rgb($3,$4,$5)) with points lc rgb variable
从手册:
1.17.1.3 rgbcolor变量
变量告诉程序读取每个的RGB颜色信息 数据文件中的行。这需要相应的附加 using说明符中的列。额外列被解释为a 24位打包RGB三联。如果该值直接在 数据文件最容易将其作为十六进制值(参见 ' rgbcolor&#39)。或者,使用说明符可以包含 表达式,其值为24位RGB颜色,如示例所示 下面。使用 tc rgbcolor变量类似地设置文本颜色。