在Matlab中,有没有办法使标记的大小与轴成比例?

ev7lccsx  于 2022-11-24  发布在  Matlab
关注(0)|答案(1)|浏览(189)

我在Map中绘制位置,我的x轴和y轴都以米为单位,我希望标记的大小与轴的比例一致。例如,x轴为500米,y轴也为500米。我希望标记的大小为10 x50米。也就是x轴的1/50和y轴的1/10。有没有办法用'MarkerSize'选项来做这个?

bz4sfanl

bz4sfanl1#

在绘图中生成可变大小标记的函数为scatter。对于每个数据点,您可以设置以下值:X、Y、标记大小和标记颜色。还有scatter3版本。
显示scatter函数用法的一些示例代码。

x = linspace(1,500,50);
y = 500 * rand(size(x));
scatter( x, y, ...      %X, Y positions, same as the plot command
    y, ...              %Use the Y valus as the size input
    ones(size(x)) , ... %All the same color (1 from the axes colormap, like a surface)
    'Filled');          %I like filled markers, rather than outlined. You can omit this.

如果您想对每个标记进行更复杂的更改(例如创建一个高度和宽度不同的矩形),那么我认为最好的方法是在循环中使用patch函数,每个数据点使用一次。(一旦您开始使用,这并不困难,尽管显然比内置函数更繁琐。)

相关问题