如何使用Jupyter Notebook上的Matplot Basemap定义地图宽度/高度?

问题描述 投票:2回答:1

TL; DR

如何将地图设置为1600x900像素?

描述

我正在尝试使用Basemap库绘制Jupyter Notebook的地图,如下所示:

from mpl_toolkits.basemap import Basemap
import numpy as np
import matplotlib.pyplot as plt

atlas = Basemap(
    llcrnrlon  =   -10.5, # Longitude lower right corner
    llcrnrlat  =      35, # Latitude lower right corner
    urcrnrlon  =    14.0, # Longitude upper right corner
    urcrnrlat  =    44.0, # Latitude upper right corner
    resolution =     'i', # Crude resolution
    projection = 'tmerc', # Transverse Mercator projection
    lat_0      =    39.5, # Central latitude
    lon_0      =   -3.25  # Central longitude
)

atlas.drawmapboundary(fill_color='aqua')
atlas.fillcontinents(color='#cc9955',lake_color='aqua')
atlas.drawcoastlines()
plt.show()

并得到以下结果

enter image description here

是否可以使绘制的地图更大,定义它应该具有的最小宽度和高度?

python matplotlib jupyter-notebook matplotlib-basemap
1个回答
2
投票

你可以使用figure

例如:

plt.figure(figsize=(1, 1)) 

除非您还提供不同的dpi参数,否则将创建一个逐英寸的图像,该图像将为80 x 80像素。您可以通过两种可能的方式更改dpi

方式1:将其作为参数传递给下图:(即300)

plt.figure(figsize=(1, 1),dpi=300)

方式2:将它传递给savefig()

plt.savefig("foo.png", dpi=300)

完美的Example

© www.soinside.com 2019 - 2024. All rights reserved.