首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何绘制变线宽的图形?

如何绘制变线宽的图形?
EN

Stack Overflow用户
提问于 2014-06-30 21:47:43
回答 1查看 1.8K关注 0票数 1

我对我想要做的一个情节有一些意见。

假设我有一个数据文件,其中有5列,如: x、y、x+dx、y+dy、a。

我想画一个矢量场,箭头的厚度与a成正比,但我不知道怎么做。假设我以一种属于0:100的方式缩放a,是否必须为每一个间隔0:5、5:10等定义一个线型.?我尝试过使用列函数,但它不起作用。

c1=12 图“数据”u 3:4:($5-3):($6-4)w向量lw列(C1)

(注:a项列在12栏中)

我试过这样的命令:

图‘数据’u 3:4:($5-$3):($6-$4):12 w向量无箭头式变量

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-07-01 16:19:02

使用可变箭头样式的最后一种方法应该工作得很好。请考虑以下示例:

代码语言:javascript
运行
复制
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的结果是

在您的情况下,它应该足够使用。

代码语言:javascript
运行
复制
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]

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24499467

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档