如何删除matplotlib图像的框架并将背景颜色设置为透明

Woo*_*odz 3 python matplotlib

我怎样才能去掉地图上的黑框?是否可以将该框架内的背景颜色从白色更改为透明?

黑框白背景图

import cartopy.crs as ccrs
import cartopy.io.shapereader as shpreader
import matplotlib.pyplot as plt


fname = 'germany.shp'

shapes = list(shpreader.Reader(fname).geometries())

ax = plt.axes(projection=ccrs.NorthPolarStereo(central_longitude=10.0))

ax.add_geometries(shapes, ccrs.PlateCarree(), edgecolor='none', alpha=1)

ax.set_facecolor((1.0, 0.47, 0.42))

ax.set_extent([6, 15, 47, 55])

plt.savefig("map.png", format='png', dpi=400, quality=95)

plt.show()
Run Code Online (Sandbox Code Playgroud)

Lui*_*aro 5

使用 关闭轴并plt.axis('off')使用 保存图形透明plt.savefig('name.png', transparent=True)

编辑:您想要更改的边框和背景是由 cartopy GeoAxes 引入的。要更改它们,请使用:

ax.background_patch.set_visible(False)   # Background
ax.outline_patch.set_visible(False)      # Borders
Run Code Online (Sandbox Code Playgroud)

可以在此处找到参考示例。

请注意,仍然需要transparent=True关键字 in 。plt.savefig