我要绘制四个曲线。前三个是彼此的变体,第四个是不同的。因此,我想把钥匙分成3 + 1。但是,例如使用
this.referrers = <SelectItem[]>this.referrers;
提供两行密钥。
我可以强迫gnuplot将密钥分成三+一吗?
答案 0 :(得分:1)
除了@ user8153的解决方案之外,我还想提出一个更通用的解决方案。
如果您有彩色背景怎么办?例如:set term wxt background rgb "grey90"
或
您有一个彩色的键(或图例)框...嗯,gnuplot不提供以下选项
钥匙箱的彩色的背景。好吧,那么如果您在按键后放置一个彩色矩形。
当然,您始终可以使颜色适应背景,但是我想用lt -2
或lt nodraw
绘制不可见的线条会更简单。
关于lt -2
或lt nodraw
,我几天前才在这里了解到:gnuplot: why is linewidth 0 not zero in width?。尽管gnuplot 5.0版以来似乎已经存在,但手册中还没有。
代码:
### invisible keyentry for column/row arrangement
reset session
set key top left maxrows 3
set obj 1 rect from graph 0.02,0.82 to graph 0.52,0.98 fs solid 1.0 fc rgb "grey90"
set xrange[-2:2]
set yrange[-2:2]
plot sin(x), sin(2*x), sin(3*x), exp(x), NaN lt -2 ti " "
### end of code
结果:
添加:
实际上,我忘记了按键盒彩色背景的解决方法。无需手动调整,也无需摆弄盒子: Set custom background color for key in Gnuplot
如果您想要透明的背景,例如用于网页上的图片,例如使用pngcairo,pdfcairo等,除了lt -2
或lt nodraw
之外,另一种解决方案是绘制一条透明线,例如透明的“黑色” lc rgb 0xff000000
:
plot sin(x), sin(2*x), sin(3*x), exp(x), NaN lc rgb 0xff000000 ti " "
代码:
### invisible keyentry for column/row arrangement with transparent background
reset session
set term pngcairo transparent
set output "tbKeyRows.png"
set key top left maxrows 3
set xrange[-2:2]
set yrange[-2:2]
plot sin(x), sin(2*x), sin(3*x), exp(x), NaN lt -2 ti " "
set output
### end of code
结果:(显示在棋盘图案的前面)