TypeError: Polygon.__init__() takes 2 positional arguments but 3 were given

《程序员数学:用Python学透线性代数和微积分》第3.5章,源码bug修正。

报错信息:

复制代码
wang@wanggongdeMacBook-Air pythonTest % /usr/local/bin/python3 /Users/wang/Docum
ents/VSCode/pythonTest/chapter3/chapter3.py
Traceback (most recent call last):
File "/Users/wang/Documents/VSCode/pythonTest/chapter3/chapter3.py", line 196, in <module>
render(octahedron, color_map=matplotlib.colormaps.get_cmap('Blues'), lines=black)
File "/Users/wang/Documents/VSCode/pythonTest/chapter3/chapter3.py", line 194, in render
draw2d(*polygons, axes=False, origin=False, grid=None)
File "/Users/wang/Documents/VSCode/pythonTest/chapter3/draw2d.py", line 107, in draw2d
poly = Polygon(object.vertices, True)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: Polygon.__init__() takes 2 positional arguments but 3 were given
复制代码

 

错误原因:

图书源码文件draw2d.py中107行的Polygon构建函数与新版本的matplotlib代码不兼容

 

修正方式:

打开draw2d.py

找到第107行

poly = Polygon(object.vertices, True)
修改为
poly = Polygon(object.vertices)

 

posted on   王培  阅读(290)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示