我在pandas中的dataframe plot中的函数markevry有一个问题。我想在图上的每一列中标记最大值。我试着在python 3上用Pycharm编译它。我的代码如下:
#projektII
import pandas as pd
import matplotlib.pyplot as plt
dane = pd.read_table('xxx.txt', names=('rok', 'kroliki', 'lisy', 'marchewki'))
df = pd.DataFrame(dane)
data = df[1:]
data=data.astype(float)
print(data)
markers_on = data['kroliki'].max
markers_on2 = data['lisy'].max
markers_on3 = data['marchewki'].max
ax = plt.gca()
data.plot(kind='line',x='rok',y='kroliki', color = 'blue',ax=ax, markevry = [markers_on])
data.plot(kind='line',x='rok',y='lisy', color='red', ax=ax, markevry = [markers_on2])
data.plot(kind='line',x='rok',y='marchewki',color = 'orange',ax=ax, markevry = [markers_on3])
ax.set_xlabel("rok")
ax.set_ylabel("ilosc")
plt.show()但我每次都会看到这样的错误:
Traceback (most recent call last):
File "C:/Users/X", line 18, in <module>
data.plot(kind='line',x='rok',y='kroliki', color = 'blue',ax=ax, markevry = [markers_on])
File "C:\Users\X\venv\lib\site-packages\pandas\plotting\_core.py", line 2941, in __call__
sort_columns=sort_columns, **kwds)
File "C:\Users\X\venv\lib\site-packages\pandas\plotting\_core.py", line 1977, in plot_frame
**kwds)
File "C:\Users\X\venv\lib\site-packages\pandas\plotting\_core.py", line 1804, in _plot
plot_obj.generate()
File "C:\Users\X\venv\lib\site-packages\pandas\plotting\_core.py", line 260, in generate
self._make_plot()
File "C:\Users\X\venv\lib\site-packages\pandas\plotting\_core.py", line 985, in _make_plot
**kwds)
...
File "C:\Users\MX\venv\lib\site-packages\matplotlib\artist.py", line 912, in _update_property
raise AttributeError('Unknown property %s' % k)
AttributeError: Unknown property markevry如果有人知道这段代码出了什么问题?谢谢!
发布于 2019-04-03 14:18:03
第一个更改:尝试调整以下内容:
markers_on = data['kroliki'].max
markers_on2 = data['lisy'].max
markers_on3 = data['marchewki'].max要这样做:
markers_on = data['kroliki'].max()
markers_on2 = data['lisy'].max()
markers_on3 = data['marchewki'].max()第二个改变:试着调整这些:
data.plot(kind='line',x='rok',y='kroliki', color = 'blue',ax=ax, markevry = [markers_on])
data.plot(kind='line',x='rok',y='lisy', color='red', ax=ax, markevry = [markers_on2])
data.plot(kind='line',x='rok',y='marchewki',color = 'orange',ax=ax, markevry = [markers_on3])至
data.plot(kind='line',x='rok',y='kroliki', color = 'blue',ax=ax, markevry = markers_on)
data.plot(kind='line',x='rok',y='lisy', color='red', ax=ax, markevry = markers_on2)
data.plot(kind='line',x='rok',y='marchewki',color = 'orange',ax=ax, markevry = markers_on3)我想这应该行得通!
https://stackoverflow.com/questions/55487921
复制相似问题