【问题标题】:Plotting a filled circle around a XY-coordinate point, with the radius corresponding to actual geographical distance在 XY 坐标点周围绘制一个实心圆,其半径对应于实际地理距离
【发布时间】:2014-05-30 20:31:50
【问题描述】:

我有一组地理坐标点(E,N),我想在 Matlab 上绘制它们。数据的坐标以米为单位,例如坐标点 E = 35000,N = 756000 表示地图上距离原点以东 35 公里,距离原点以北 756 公里的点。

我想要做的是在 Matlab 图中绘制这些坐标点。这很容易,但我还想做的是选择一个特定的坐标点并围绕该点绘制一个实心圆,圆的半径(作为参数给出)对应于实际距离(以米为单位)地理地图。

下面的图片将解释我的问题(即使圆圈没有填满):

如何在 Matlab 上轻松完成?有任何想法吗? =)如果我的问题不清楚,请告诉我:)

感谢您的帮助! =)

更新:

这是我使用用户 natan 的代码得到的结果:

完美;)

【问题讨论】:

    标签: matlab plot coordinates


    【解决方案1】:

    为此使用fill,例如:

    r=5000; % some radius
    color=[1 0 0]; % red color
    t=linspace(0,2*pi);
    fill(E+r*cos(t),N+r*sin(t),color); % this creates a filled circle centered at (E,N)
    

    请注意,虽然这会创建一个实心圆,但当您实际绘制时,轴会自动设置,因此它可能看起来像一个椭圆。为了使它在任何缩放中看起来都正确,需要对fill 行做更多的工作。但就是这样。 (或使用axis square

    【讨论】:

    • +1 感谢您的帮助@natan =) 感谢它 =)
    • +1 再次感谢您 =) 完美运行! =) 我使用了相等的轴,它看起来像圆形 =) 我将添加我的绘图的屏幕截图,以便您看到 =)
    • 没关系...我相信你... :)
    • +1 呵呵,只是想展示一下 ;) 完美 ;D 谢谢!你们帮忙对其他人来说是一笔宝贵的财富;)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多