如何将 'MarkerSize' 关联到表示绘制圆的半径的值?
How to associate the 'MarkerSize' to a value that means the radius of a plotted circle?
我有三个相同长度的向量。其中两个包含我想要绘制的 X
和 Y
坐标。第三个包含我想关联绘制圆的半径的值。
我看过plot
中的'MarkerSize'
对应圆周上的点数,如果要用scatter
,第三个向量对应圆周的面积绘制的圆。
尽管如此,我希望我的第三个矢量与半径相关联
因此,如何将圆的大小与半径联系起来?
我使用 plot
:
hold on;
for nd = 1 : 24
plot(xL(nd), -yL(nd), 'o', 'MarkerFaceColor', 'g', 'MarkerEdgeColor', 'k', 'MarkerSize', attribute(nd))
end
这使用 scatter
:
hold on;
for nd = 1 : 24
scatter(xL(nd), -yL(nd), attribute(nd), 'o', 'MarkerFaceColor', 'k', 'MarkerEdgeColor', 'k')
end
在此先感谢您的帮助。
假设您要使用 MarkerSize
作为 plot
的属性,如您所说,此数字报告绘制标记的周长(以像素为单位)。
嗯,你知道圆的周长和它的半径是有关系的:
来源:Math Is Fun
因此,圆的周长等于pi
乘以直径,也就是半径的两倍...所以:
C = 2*pi*r
C
将是 MarkerSize
属性。因此,给定一个半径,只需乘以 2*pi
即可得到所需的周长。请记住,上述计算将产生浮点值,因此要么采用 floor
,要么采用 ceil
或 round
以获得所需的效果。
换句话说,假设您要报告 radius:
,对您的 attribute
向量执行此操作
attribute = floor(2*pi*attribute);
现在将它与 MarkerSize
和 plot
一起使用。
另一方面,如果您想使用 scatter
...您知道圆的面积与其半径之间存在关系:
(来源:whstatic.com)
来源:WikiHow
因此,给定半径,只需将半径平方乘以pi
即可得到面积,然后将其用作scatter
的第三个参数...再次考虑浮动-点精度:
attribute = floor(pi*attribute.^2);
您现在可以将其与 scatter
一起使用。
我有三个相同长度的向量。其中两个包含我想要绘制的 X
和 Y
坐标。第三个包含我想关联绘制圆的半径的值。
我看过plot
中的'MarkerSize'
对应圆周上的点数,如果要用scatter
,第三个向量对应圆周的面积绘制的圆。
尽管如此,我希望我的第三个矢量与半径相关联
因此,如何将圆的大小与半径联系起来?
我使用 plot
:
hold on;
for nd = 1 : 24
plot(xL(nd), -yL(nd), 'o', 'MarkerFaceColor', 'g', 'MarkerEdgeColor', 'k', 'MarkerSize', attribute(nd))
end
这使用 scatter
:
hold on;
for nd = 1 : 24
scatter(xL(nd), -yL(nd), attribute(nd), 'o', 'MarkerFaceColor', 'k', 'MarkerEdgeColor', 'k')
end
在此先感谢您的帮助。
假设您要使用 MarkerSize
作为 plot
的属性,如您所说,此数字报告绘制标记的周长(以像素为单位)。
嗯,你知道圆的周长和它的半径是有关系的:
来源:Math Is Fun
因此,圆的周长等于pi
乘以直径,也就是半径的两倍...所以:
C = 2*pi*r
C
将是 MarkerSize
属性。因此,给定一个半径,只需乘以 2*pi
即可得到所需的周长。请记住,上述计算将产生浮点值,因此要么采用 floor
,要么采用 ceil
或 round
以获得所需的效果。
换句话说,假设您要报告 radius:
,对您的attribute
向量执行此操作
attribute = floor(2*pi*attribute);
现在将它与 MarkerSize
和 plot
一起使用。
另一方面,如果您想使用 scatter
...您知道圆的面积与其半径之间存在关系:
(来源:whstatic.com)
来源:WikiHow
因此,给定半径,只需将半径平方乘以pi
即可得到面积,然后将其用作scatter
的第三个参数...再次考虑浮动-点精度:
attribute = floor(pi*attribute.^2);
您现在可以将其与 scatter
一起使用。