Basemap包排雷記錄
1. ‘AxesSubplot’ object has no attribute ‘get_axis_bgcolor’
學Basemap包時運行下面的代碼,遇到了error。
# 導入包
from mpl_toolkits.basemap import Basemap
import matplotlib.pyplot as plt
# 更改投影方式
m = Basemap(projection = 'ortho', lat_0 = 0, lon_0 = 0)
# 給整個地圖上藍色
m.drawmapboundary(fill_color = 'aqua')
# 給陸地塗上珊瑚色,湖泊塗上藍色
m.fillcontinents(color = 'coral', lake_color = 'aqua')
# 畫圖
m.drawcoastlines()
# 顯示結果
plt.show()
error內容如下:
也就是’AxesSubplot’ object has no attribute ‘get_axis_bgcolor’。
百度了一通,發現是.get_axis_bgcolor
這個子類在Matplotlib 2.0開始就沒有了,改成了.get_facecolor()
,於是根據error裏的地址找到__init__.py,把裏面的.get_axis_bgcolor
替換成.get_facecolor()
,成功!叮~
救命稻草來自:https://stackoverflow.com/questions/16992038/inline-labels-in-matplotlib
2018.09.03