我想制作一些情节问题。
假设我有一个包含5列的数据文件,如:x,y,x + dx,y + dy,a。
我想绘制一个箭头厚度与a成比例的矢量场,但我不知道该怎么做。假设我以一种它属于[0:100]的方式缩放a,我是否必须为每个区间[0:5],[5:10]等定义一个线型......? 我已尝试使用列功能,但它无法正常工作。
C1 = 12
绘制'数据'你3:4:($ 5- $ 3):( $ 6- $ 4)w vector lw column(c1)
(注意:一个术语在十二列中)
我尝试了这个命令:
情节'数据'你3:4:($ 5- $ 3):( $ 6- $ 4):12 w矢量nohead arrowstyle变量
答案 0 :(得分:2)
使用变量箭头样式的最后一种方法应该可以正常工作。请考虑以下示例:
set samples 11
set xrange [0:100]
set for [i=1:101] style arrow i lw i/10.0 nohead
unset key
plot '+' using 1:1:(2):(10):($1+1) with vectors arrowstyle variable
这里我定义了100种箭头样式,它们的线宽不同。版本4.6.5的结果是
在你的情况下,使用
就足够了set for [i=1:101] style arrow i lw i/10.0 nohead
plot 'data' u 3:4:($5-$3):($6-$4):12 w vectors nohead arrowstyle variable
当然,您必须确保第12列位于[1:101]
范围内。您还可以使用stats
确定第12列中值的限制,并编写一个函数map(x)
,将此列的值映射到所需的范围[1:101]
。