Python Cartopy和matplotlib类型错误:不可损坏类型:';多重限制';

Python Cartopy和matplotlib类型错误:不可损坏类型:';多重限制';,python,matplotlib,cartopy,Python,Matplotlib,Cartopy,我正试图通过遵循Cartopy官方网站上提供的示例来玩弄Cartopy。除了第一个,所有这些都能正常工作 import cartopy.crs as ccrs import matplotlib.pyplot as plt ax = plt.axes(projection=ccrs.PlateCarree()) ax.coastlines() plt.show() 所有行都正常工作,但只要运行plt.show()命令,就会收到以下错误消息: Exception in Tkinter cal

我正试图通过遵循Cartopy官方网站上提供的示例来玩弄Cartopy。除了第一个,所有这些都能正常工作

import cartopy.crs as ccrs
import matplotlib.pyplot as plt

ax = plt.axes(projection=ccrs.PlateCarree())
ax.coastlines()

plt.show()
所有行都正常工作,但只要运行plt.show()命令,就会收到以下错误消息:

Exception in Tkinter callback
Traceback (most recent call last):
  File "/usr/lib/python2.7/lib-tk/Tkinter.py", line 1539, in __call__
    return self.func(*args)
  File "/usr/lib/python2.7/dist-packages/matplotlib/backends/backend_tkagg.py", line 278, in resize
    self.show()
  File "/usr/lib/python2.7/dist-packages/matplotlib/backends/backend_tkagg.py", line 349, in draw
    FigureCanvasAgg.draw(self)
  File "/usr/lib/python2.7/dist-packages/matplotlib/backends/backend_agg.py", line 469, in draw
    self.figure.draw(self.renderer)
  File "/usr/lib/python2.7/dist-packages/matplotlib/artist.py", line 59, in draw_wrapper
    draw(artist, renderer, *args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/matplotlib/figure.py", line 1079, in draw
    func(*args)
  File "/usr/lib/python2.7/dist-packages/matplotlib/artist.py", line 59, in draw_wrapper
    draw(artist, renderer, *args, **kwargs)
  File "/home/mrvaita/python_workspace/gis_venv/local/lib/python2.7/site-packages/cartopy/mpl/geoaxes.py", line 359, in draw
    inframe=inframe)
  File "/usr/lib/python2.7/dist-packages/matplotlib/artist.py", line 59, in draw_wrapper
    draw(artist, renderer, *args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/matplotlib/axes/_base.py", line 2092, in draw
    a.draw(renderer)
  File "/usr/lib/python2.7/dist-packages/matplotlib/artist.py", line 59, in draw_wrapper
    draw(artist, renderer, *args, **kwargs)
  File "/home/mrvaita/python_workspace/gis_venv/local/lib/python2.7/site-packages/cartopy/mpl/feature_artist.py", line 113, in draw
    {})
  File "/usr/lib/python2.7/weakref.py", line 433, in setdefault
    return self.data.setdefault(ref(key, self._remove),default)
TypeError: unhashable type: 'MultiLineString'
有人已经知道这件事了吗? 我的matplotlib版本是1.4.2,Cartopy版本是0.13.0


非常感谢您的帮助。

这是Cartopy问题跟踪程序上报告的一个问题。基本上,Shapely在1.5.12和1.5.13之间更改了几何体的哈希性。在我们推出新版本的cartopy之前,解决办法是将shapely的安装降级到1.5.12


HTH

这是Cartopy问题跟踪器上报告的问题。基本上,Shapely在1.5.12和1.5.13之间更改了几何体的哈希性。在我们推出新版本的cartopy之前,解决办法是将shapely的安装降级到1.5.12