我在matlab中使用m_map包来生成某些值的全局映射。
以下是一个例子:
$ git log --pretty=format:"author: %an, %ae\ncommiter: %cn, %ce\nInfo: %s"
在两个投影中使用完全相同的lat和lon值。为什么亚洲点不会出现在第一张地图中?他们似乎只是表明我是不是将0设置为数字的中心。
任何建议都将不胜感激。
答案 0 :(得分:2)
这似乎是m_map的一个错误。这个问题似乎没有180W东部的情节。所以在你的第一张地图中:
m_plot(-175,-40,'r.') % this works
m_plot(175,-40,'r.') % this doesn't
但是
m_plot(-185,-40,'r.') % same as second point above
的工作原理。请注意,如果您执行
,则会发生相反的情况m_proj('Mollweide','clongitude', 240);
在后一种情况下,绘制了亚洲仅的数据点。
快速(但不是很好)的解决方法是将所有(+)经度点转换为( - )经度。
P.S。你不需要那个for循环:
m_plot(lon2,lat2,'ko','markersize',4,'MarkerFaceColor','r');