2015-06-30 100 views
0

我可以积与如何绘制MatLab中的厚螺旋线?

w = 0.1; 
SAU = 0.1; 
r = 0:100; 
Phi = 2*pi/w*(1-SAU)*r/500; 

一个普通的螺旋,但我怎样才能改变我的披使图形是具有一些特定的厚度,而不仅仅是一个细线螺旋螺旋的?像这样(这里几个螺旋被绘制在一起,通过忽略): enter image description here

回答

2

利用您的polar调用的输出来解决和更改线属性。在这种情况下,我们对LineWidth属性感兴趣。

w = 0.1; 
SAU = 0.1; 
r = 0:100; 
Phi = 2*pi/w*(1-SAU)*r/500; 
h.myplot = polar(Phi, r); 
h.myplot.LineWidth = 8; % Adjust as necessary 

这假设你有R2014b或更新版本。如果您有较旧的版本,请使用set。有关更多信息,请参阅this blog post

编辑:按照您的评论我想你可以这样做:

w = 0.1; 
SAU = 0.1; 
r = 0:100; 
Phi = 2*pi/w*(1-SAU)*r/500; 

width = 50; 
polar(Phi, r, '-b') 
hold on 
for ii = 2:width 
    polar(Phi + (ii*pi)/180, r, '-b'); 
end 

对于比较: plot comparison

+0

但这也不会真正创造寿加分,不是吗?例如,如果我希望图中的所有白色区域都为0,并且所有黑色区域都为1.我想我想说我不希望它只是一个视觉调整,我想要那个区域物理上存在。如果你有一条扁平的线段,不要把它炸掉,所以它看起来像一个矩形,但实际上是写一个矩形的方程。如果这是有道理的+。+ ... – Raksha

+0

@Solarmew我不知道我明白你为什么想这样做。据我所知,MATLAB没有这个功能,但你可以伪造它。查看我的编辑方法。 – excaza

+0

本质上,我试图从具有这种模式的镜头反射出一束光线,所以我需要能够修改沟槽的厚度以查看将反射多少光线。光束被估计为点矩阵。所以我需要将这种模式表示为矩阵。 – Raksha