Python Matplotlib Basemap - 如何设置缩放级别
Python Matplotlib Basemap - how to set zoom level
我有一个数据框,其中的位置以经度和纬度坐标(以度为单位)给出。这些地点在纽约附近。因此,我在 Python 中设置了一个底图,可以很好地显示所有这些位置。工作正常!
但是:地图是内联绘制的,非常小。我怎样才能强制这个数字比方说大 3 倍 (zoom=3)。
这是代码。数据来自 Kaggle Two Sigma Rental Listing 挑战。
%matplotlib inline
import matplotlib.pyplot as plt
from mpl_toolkits.basemap import Basemap
# New York Central Park
# Longitude: -73.968285
# Latitude: 40.785091
m = Basemap(projection='merc',llcrnrlat=40,urcrnrlat=42,\
llcrnrlon=-75, urcrnrlon=-72, resolution='i', area_thresh=50, lat_0=40.78, lon_0=-73.96)
m.drawmapboundary()
m.drawcoastlines(color='black', linewidth=0.4)
m.drawrivers(color='blue')
m.fillcontinents(color='lightgray')
lons = df['longitude'].values
lats = df['latitude'].values
x,y = m(lons, lats)
# r = red; o = circle marker (see: http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.plot)
m.plot(x, y, 'ro', markersize=4)
plt.show()
通常它会很简单:
plt.figure(figsize=(20,10))
How do you change the size of figures drawn with matplotlib?
但还有一些其他选项,请参阅:
How to maximize a plt.show() window using Python
同时获取当前大小(为了"zoom")
关于具体问题:
the figure is inline inside a Jupyter notebook
在创建或绘制 map/figure 之前:
import matplotlib
matplotlib.rcParams['figure.figsize'] = (30,30)
我有一个数据框,其中的位置以经度和纬度坐标(以度为单位)给出。这些地点在纽约附近。因此,我在 Python 中设置了一个底图,可以很好地显示所有这些位置。工作正常!
但是:地图是内联绘制的,非常小。我怎样才能强制这个数字比方说大 3 倍 (zoom=3)。
这是代码。数据来自 Kaggle Two Sigma Rental Listing 挑战。
%matplotlib inline
import matplotlib.pyplot as plt
from mpl_toolkits.basemap import Basemap
# New York Central Park
# Longitude: -73.968285
# Latitude: 40.785091
m = Basemap(projection='merc',llcrnrlat=40,urcrnrlat=42,\
llcrnrlon=-75, urcrnrlon=-72, resolution='i', area_thresh=50, lat_0=40.78, lon_0=-73.96)
m.drawmapboundary()
m.drawcoastlines(color='black', linewidth=0.4)
m.drawrivers(color='blue')
m.fillcontinents(color='lightgray')
lons = df['longitude'].values
lats = df['latitude'].values
x,y = m(lons, lats)
# r = red; o = circle marker (see: http://matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.plot)
m.plot(x, y, 'ro', markersize=4)
plt.show()
通常它会很简单:
plt.figure(figsize=(20,10))
How do you change the size of figures drawn with matplotlib?
但还有一些其他选项,请参阅:
How to maximize a plt.show() window using Python
同时获取当前大小(为了"zoom")
关于具体问题:
the figure is inline inside a Jupyter notebook
在创建或绘制 map/figure 之前:
import matplotlib
matplotlib.rcParams['figure.figsize'] = (30,30)