如何绘制具有不同线宽的线?

10,527意见(过去30天)
莱尔·格林伯格
莱尔·格林伯格 2011年9月22日
你好
我想做:
绘图(X1,Y1,X2,Y2,“线宽”,8)
但是linewidth属性最终应用于两条线。我是否必须使用两个带有保持命令的打印函数才能使line1的宽度与line2的宽度不同?谢谢。
2评论

登录以发表评论。

公认的答案

蒋方军
蒋方军 2011年9月22日
编辑:Mathworks支金宝app持团队 2018年11月8日
要绘制两行具有不同线宽,可以使用这些方法中的任何一种。
1.从“plot”函数返回两个“Line”对象作为输出参数,然后为每个对象设置“LineWidth”属性。
p = plot(x1,y1,x2,y2)
p(1).线宽=5;
p(2).LineWidth = 10;
2.使用“按住”命令分别绘制两行。通过设置“LineWidth”属性A名称值对来指定线宽。
图(x1,y1,“线宽”5)
持有
图(x2,y2,“线宽”,10)
持有
2评论
麦克·加里蒂
麦克·加里蒂 2016年3月8日
只是FYI,有一个“官方”语法,用于将属性设置为不同对象的不同值。然而,它真的很难,而且无处不在。例如,我认为绘图函数不接受此表单。
它看起来像这样:
h=曲线图(x1,y1,x2,y2);
设置(h{“线宽”},{5; 10})
属性名称和属性值每个都是单元格数组,并且值单元数组的形状必须匹配句柄单元阵列的形状。
也就是说,在这种情况下,你最好打两个电话。

登录以发表评论。

更多答案(4)

韦恩国王
韦恩国王 2011年9月22日
嗨:你可以使用句柄。
h=曲线图(x1,y1,x2,y2);
组(h(1),'行宽',1);
组(h(2),'行宽',2);

哈里·德萨努尔
哈里·德萨努尔 2016年11月15日
编辑:哈里·德萨努尔 2016年11月15日
可以使用线条对象句柄设置特定线条的线条宽度-
l=曲线图(x1,y1,x2,y2);
l(1).线宽=3;%将第一行(x1,y1)的线宽设置为3
L(2).LineWidth = 6;

谁的主人
谁的主人 2019年2月14日
1-可能有什么问题?2-线宽属性意味着什么?3-怎么办?
[我正在使用matlab R2016b]
当我想用颜色和一定宽度绘制线时,我收到一个错误:
命令
曲线图(信噪比db,局部放电NSP平均值(:,2),‘b’,‘线宽’,2.5)
错误:
使用情节错误
Line类上没有LineWidth属性。
基于投影的共享错误(第76行)
曲线图(信噪比db、Pd NSP cat平均值(:,1)、‘g’、‘线宽’,2.5)

谢兰德拉·潘迪
谢兰德拉·潘迪 2020年10月11日
x = 1:.01:10;
y1=sin(x);
y2=cos(x);
p=曲线图(x,y1,x,y2)
集合(p{“线宽”},{5; 10})
线宽,指定为点的正值,其中1点= 1/72英寸。如果线路具有标记,则线宽也会影响标记边缘。
线宽不能小于像素的宽度。如果将线宽设置为小于系统上像素宽度的值,则线条显示为一个像素宽。

社区寻宝

在MATLAB Central中查找宝藏,了解社区如何帮助您!

开始狩猎!