“裁剪”底图(Python)投影,仅覆盖1个半球

2024-04-19 16:36:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用basemap中定义的Hammer投影(由于可以更改lon_0参数,所以我使用basemap的版本,而不是直接在maptplotlib中定义的版本)。在

但我的目标是表示从地面生成的天空地图,因此绘制地图(地面)的南半球是没有意义的。在

https://dl.dropboxusercontent.com/u/66372761/skymap.png

我想要什么(或多或少)

https://dl.dropboxusercontent.com/u/66372761/skymap_crop.png

有没有办法用这个底图模块来实现这一点?。当然,有一种选择是保存图像,然后用p.e.imagemagick对其进行裁剪,但这似乎有点难看,而且由于轴标签等原因,结果还远远不够完美。在

我看到有人设法用matplotlib的自定义投影matplotlib: custom projection for hemisphere/wedge得到了一些类似的东西,但它是用标准matplotlib实现的,而不是使用basemap模块。在

我使用的是python2.7、matplotlib 1.3.1和basemap 1.0.7。在

提前谢谢你, 米格尔


Tags: 模块https版本com定义pngmatplotlib投影
1条回答
网友
1楼 · 发布于 2024-04-19 16:36:56

通常,只显示部分映射的方法是在Basemap()构造函数中使用height, width, lat_0和{}参数。但是,hammer投影会忽略除lon_0参数之外的所有内容,这意味着按照您想要的方式裁剪图像的唯一方法是在basemap创建图像之后对其进行裁剪,或者使用其他类型的投影。在

相关问题 更多 >