瞬间集分享 http://blog.sciencenet.cn/u/yusufma 激光,光谱学,生物医学光子学

博文

谈谈gnuplot(三十二):等高线的颜色

已有 8394 次阅读 2011-12-23 07:22 |个人分类:开源软件|系统分类:科研笔记|关键词:gnuplot,数学,画图,软件,等高线,颜色,colornames,increment,userstyles| 数学, 软件, 画图, 等高线

上一讲最后我们提到了怎样改变等高线的数值间距。不同等高线是由颜色来区分的,而默认的颜色未必是最理想的组合,我们还用上次的数据文件举例:
gnuplot> set contour
gnuplot> unset surface
gnuplot> set size square
gnuplot> set key at screen 0.8,0.8
gnuplot> set view map
gnuplot> splot "surface.dat" with lines title ""


这里有些默认的颜色太浅了,看不清楚。下面我们想办法把它们加深加粗。

细心的读者可能注意到,这里默认的等高线颜色和上一讲中的不同。等高线的默认颜色是这样确定的:按照色彩编号(如果不记得了,请复习一下我们以前讲过的“点线风格”)从低到高,而最低的色彩比曲面(surface)颜色大一号。这里虽然曲面没有画出来,但是仍然占去了 1 号颜色,所以等高线颜色从 2 号颜色(绿色)开始。而上一讲中,我们设置了 hidden3d 参数,曲面上下面分别使用不同的颜色,因此曲面占去 2 个颜色,等高线从 3 号颜色(蓝色)开始。

我们现在要做的就是要 gnuplot 使用我们自定义的颜色,而不是系统默认的颜色。下面看代码:
gnuplot> set style line 1 lw 2 lc rgb "red"
gnuplot> set style line 2 lw 2 lc rgb "forest-green"
gnuplot> set style line 3 lw 2 lc rgb "blue"
gnuplot> set style line 4 lw 2 lc rgb "magenta"
gnuplot> set style line 5 lw 2 lc rgb "dark-cyan"
gnuplot> set style line 6 lw 2 lc rgb "goldenrod"
gnuplot> set style increment userstyles
gnuplot> replot


我们这里首先自定义了一系列 linestyle(参考第十八讲“图例”),然后用 set style increment userstyles 命令告诉 gnuplot 使用我们自己定义的曲线风格,而不是默认风格。这样,我们得到了我们想要的效果。

这里我们并没有使用 RGB 直接定义颜色,而是用了一系列色彩的名字(colornames),这些 colornames 是 gnuplot 预定义的一些 RGB 颜色。如果想知道到底有哪些预定义的颜色,可以使用下面的命令:
gnuplot> show palette colornames

其实不仅限于等高线,只要是在同一个图上画多个函数或数据,都可以用这种方法设置显示风格。


http://blog.sciencenet.cn/blog-373392-521127.html

上一篇:谈谈gnuplot(三十一):等高线图
下一篇:谈谈gnuplot(三十三):table 输出

1 温世正

该博文允许注册用户评论 请点击登录 评论 (2 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备14006957 )

GMT+8, 2019-12-9 11:41

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部