![](/img/trans.png)
[英]How do I plot 2 variables on the same map with a single palette with Cartopy?
[英]How can I modify the margins when I plot map with cartopy?
我使用cartopy(以下代碼)繪制世界地圖。 我已經設置為ax = fig.add_axes([0, 0, 1, 1])
。 但是,輸出映射始終在幀上顯示較大的邊距。 我想將地圖顯示為全屏或全尺寸圖像。
如何設置繪圖的邊距?
import cartopy.crs as ccrs
import cartopy.feature as cfeature
import matplotlib.pyplot as plt
fig = plt.figure()
ax = fig.add_axes([0, 0, 1, 1])
ax = plt.axes(projection=ccrs.PlateCarree())
ax.add_feature(cfeature.LAND)
ax.add_feature(cfeature.OCEAN)
ax.add_feature(cfeature.COASTLINE)
ax.add_feature(cfeature.BORDERS)
ax.outline_patch.set_visible(False)
plt.show()
您正在創建兩個軸。
ax = fig.add_axes([0, 0, 1, 1])
這是緊緊位於圖形上的軸 ax = plt.axes(projection=ccrs.PlateCarree())
這是顯示世界地圖的軸,但具有通常的邊距。 您當然可以決定其中之一,然后刪除另一個,例如
ax = fig.add_axes([0, 0, 1, 1], projection=ccrs.PlateCarree())
這將創建一個軸,該軸緊密地位於圖形的一側 。 原因是該地圖具有固定的長寬比,並且與圖中的不同。
因此,要使軸沿圖的兩側緊緊,還需要設置圖的大小。 世界地圖的縱橫比為0.5,因為它的水平方向為360單位,垂直方向為180單位。 因此,圖形寬度需要是圖形高度的兩倍。 例如
fig = plt.figure(figsize=(7, 3.5))
ax = fig.add_axes([0, 0, 1, 1], projection=ccrs.PlateCarree())
結果:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.