2014-12-03 92 views
1

我有35个数据集和我使用下列命令他们绘制在一个图表中:gnuplot的:改变自动调色板

set output 'NC_006509.fna.pdf' 
set xlabel "Position (kb)" 
set ylabel "Identity (%)" 
set size 1, 0.25 
unset key 
set xrange [0:4000] 
set yrange [75:101] 
filename(n) = sprintf("blast_sample%d_454LargeContigs.fna.fas_vs_NC_006509_filter.txt", n) 
plot for [i=1:35] filename(i) using ($9/1000):3:(($10-$9)/1000):($3-$3) with vectors 
set xrange [0:GPVAL_DATA_X_MAX] 
set terminal pdfcairo font 'Arial, 6' 
replot 

与输出

enter image description here

的Gnuplot自动colourized每个数据集。问题在于对比度不好,因为大多数矢量在浅绿色和黄色的白色背景中。有没有办法将矢量的自动调色板更改为较暗的颜色(每种颜色代表一个数据集)?

回答

0

没有选项可以使默认颜色变暗。

在任何情况下,为了区分单个图中的所有35行将是不可能的。如果您只希望可视化所有数据集涵盖的区域,并指出您拥有不同的数据集,则可以定义适当的深色调色板并使用linecolor palette frac选择不同的颜色。

至于例如,你可以使用

set palette model HSV defined (0 0 1 0.5, 1 1 1 0.5) 

这给(使用test palette):

enter image description here

为了得到它在你的脚本工作,使用

set palette model HSV defined (0 0 1 0.5, 1 1 1 0.5) 
plot for [i=1:35] filename(i) using ($9/1000):3:(($10-$9)/1000):($3-$3) with vectors linecolor palette frac (i/35.0) 

当然你也可以重新定义所有的默认线型wi set linetype,但这可能是更多的工作。

+0

太好了。非常感谢! – Fernando 2014-12-04 12:26:15