【问题标题】:cartopy: zoom in to a regioncartopy:放大到一个区域
【发布时间】:2017-06-07 12:18:56
【问题描述】:

我想使用 Cartopy 仅绘制一个区域(在我的例子中是北美和南美)。

我目前正在使用以下代码:

import cartopy
import cartopy.crs as ccrs
import matplotlib.pyplot as plt

lon, lat, freq = .., ..., ...  # initialize longitude and latitude and line width
ax = plt.axes(projection=ccrs.PlateCarree())
ax.stock_img()
ax.add_feature(cartopy.feature.LAND)
ax.add_feature(cartopy.feature.OCEAN)
ax.add_feature(cartopy.feature.COASTLINE)
ax.add_feature(cartopy.feature.BORDERS, linestyle='-', alpha=.5)

for la, lo, fq in zip(lat, lon, freq):
    plt.plot(lo, la, color='red', linewidth=fq, marker='o', transform=ccrs.PlateCarree())

然后它产生:

我想要什么(放大版):

有没有办法做到这一点?

【问题讨论】:

    标签: python gis cartopy


    【解决方案1】:

    您可以使用ax.set_extent()

    ax.set_extent([-150, -20, -90, 90])
    

    【讨论】:

    • 在设置范围时包含crs 是一种很好的做法,以便在投影更改时代码仍然可以工作,尽管在此示例中结果将是相同的:ax.set_extent([-150, -20, -90, 90], crs=ccrs.PlateCarree())
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-09
    • 1970-01-01
    相关资源
    最近更新 更多