import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
import numpy as np
df = pd.read_csv('Iris.csv')
plot = plt.scatter(df['SepalLengthCm'], df['PetalLengthCm'])
plot.savefig('ScatterIris.png')
我正在尝试做一些非常基本的 matplotlib 东西,但它不断引发错误。
C:\Users\Robert\Anaconda3\python.exe
C:/Users/Robert/PycharmProjects/linear_regression/ML.py
Traceback (most recent call last):
File "C:/Users/Robert/PycharmProjects/linear_regression/ML.py", line 9, in <module>
plot.savefig('ScatterIris.png')
AttributeError: 'PathCollection' object has no attribute 'savefig'
首先我无法使用 .show() 属性,然后我无法使用 .savefig() 属性。我的 matplotlib 安装有问题吗?
作为引用,我尝试将 matplotlibrc 中的 matplotib 后端更改为几个不同的后端,并且每次都会出现相同的错误。
编辑@nbryans
plt.scatter(df['SepalLengthCm'], df['PetalLengthCm']).savefig('ScatterIris.png')
出现同样的错误
编辑2:
是的,你们是对的,我可以保存数字并使用 show() 属性/方法。 谢谢!
最佳答案
您需要调用 pyplot 的 savefig
方法。
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
import numpy as np
df = pd.read_csv('Iris.csv')
plt.scatter(df['SepalLengthCm'], df['PetalLengthCm'])
plt.savefig('ScatterIris.png')
如果您使用 pandas 绘图功能,情况也是如此,
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
import numpy as np
df = pd.read_csv('Iris.csv')
df.plot(kind="scatter", x='SepalLengthCm', y= 'PetalLengthCm')
plt.savefig('ScatterIris.png')
关于python - matplotlib 属性错误问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43920591/