matplotlib 血小板保存():值错误:虚线列表中的所有值必须为正数

wqsoz72f  于 2023-01-31  发布在  其他
关注(0)|答案(2)|浏览(105)

运行下面链接中的代码会导致错误。至于与图像有关的东西,我不知道“破折号列表”是什么。

matplotlib.pyplot as plt
...
plt.savefig('tutorial10.png',dpi=300)

返回错误的段:

---------------------------------------------------------------------------
    ValueError                                Traceback (most recent call last)
    <ipython-input-21-edce1701d7a3> in <module>()
    60     ax.add_collection(lines)
    61 
--> 62 plt.savefig('tutorial10.png',dpi=300)
    63 
    64 plt.show()

    ...

    C:\Anaconda\lib\site-packages\matplotlib\backend_bases.pyc in set_dashes(self, dash_offset, dash_list)
    902             dl = np.asarray(dash_list)
    903             if np.any(dl <= 0.0):
--> 904                 raise ValueError("All values in the dash list must be positive")
    905         self._dashes = dash_offset, dash_list
    906

http://www.geophysique.be/2013/02/12/matplotlib-basemap-tutorial-10-shapefiles-unleached-continued/

wvt8vs2t

wvt8vs2t1#

在您链接的代码中,有以下几行:

m.drawparallels(np.arange(y1,y2,2.),labels=[1,0,0,0],color='black',dashes=[1,0],labelstyle='+/-',linewidth=0.2) # draw parallels
m.drawmeridians(np.arange(x1,x2,2.),labels=[0,0,0,1],color='black',dashes=[1,0],labelstyle='+/-',linewidth=0.2)

在这两行中,参数dashes被设置为[1,0]。对于您的错误消息,数组dashes中的所有值必须严格为正。这就是为什么您会得到异常(您的数组dashes包含零)。

vulvrdjw

vulvrdjw2#

在matplotlib 3.6.2中,绘制线宽为空的虚线时也会出现此错误:plt.plot(1, 1, ls='--', lw=0)

相关问题