我正在努力学习Python。我正在使用以下程序,它创建图像确定,但我想保存它。我尝试了一些我在本网站上找到的说明,但是我在底部收到了错误信息。任何帮助将不胜感激。
程序:
import sys
import random
import matplotlib as plt
from graphics import *
def main():
m=1
n=2
offset=50
win = GraphWin("MyWin",500, 500)
win.setBackground(color_rgb(0,0,0))
for i in range(1,1000,1):
r= random.uniform(0,1)
q= int(3*r)
m = (m/2) + q*(q-1)*75
n = (n/2) + q*(3-q)*75
pt = Point(m + offset,n + offset)
pt.setOutline(color_rgb(255,255,0))
pt.draw(win)
print("graphic done")
plt.savefig("figure.png")
win.getMouse()
win.close()
if __name__ == '__main__':
main()
错误讯息:
图形完成
追溯(最近的呼叫最后):
文件“fractal_1.py”,第29行,< module> 主()
在主要文件中输入第24行“fractal_1.py” plt.savefig( “figure.png”)
AttributeError:模块'matplotlib'没有属性'savefig'
答案 0 :(得分:0)
感谢您收听错误,但是说savefig()
没有matplotlib.pyplot.savefig()
功能。
根据此链接,我认为它是plt.pyplot.savefig()
:https://matplotlib.org/api/_as_gen/matplotlib.pyplot.savefig.html
编辑您的代码,说:{{1}}。
答案 1 :(得分:0)
对plt.savefig("figure.png")
的调用仅在您按如下方式导入时才有效:
import matplotlib.pyplot as plt
。
我相信你的错误在于plt
以及它实际引用的内容。如果你这样导入:import matplotlib as plt
然后你需要调用所需的函数:plt.pyplot.savefig("figure.png")
如果您这样导入:import matplotlib.pyplot as plt
然后你可以像这样调用所需的函数:plt.savefig("figure.png")