#python-3.x #matplotlib
Вопрос:
Приведены данные по этой ссылке:
Я пытаюсь построить его с помощью matplotlib
:
import pandas as pd
import matplotlib.pyplot as plt
df['Month'] = pd.to_datetime(df['Month'], infer_datetime_format = True)
df = df.set_index('Month',inplace=False)
# plot graph
plt.xlabel('date')
plt.ylabel('trafic flow count')
plt.plot(df)
Но это вызывает следующую ошибку:
Traceback (most recent call last):
File "<ipython-input-94-36d5bf32b0eb>", line 43, in <module>
plt.xlabel('date')
File "/Users/x/anaconda3/lib/python3.6/site-packages/matplotlib/pyplot.py", line 1512, in xlabel
File "/Users/x/anaconda3/lib/python3.6/site-packages/matplotlib/pyplot.py", line 984, in gca
_pylab_helpers.Gcf.set_active(ax.figure.canvas.manager)
File "/Users/x/anaconda3/lib/python3.6/site-packages/matplotlib/figure.py", line 1817, in gca
self.clf(keep_observers=keep_observers)
File "/Users/x/anaconda3/lib/python3.6/site-packages/matplotlib/figure.py", line 1239, in add_subplot
projection_class, kwargs, key =
File "/Users/x/anaconda3/lib/python3.6/site-packages/matplotlib/axes/_subplots.py", line 77, in __init__
"""Change subplot geometry, e.g., from (1, 1, 1) to (2, 2, 3)."""
File "/Users/x/anaconda3/lib/python3.6/site-packages/matplotlib/axes/_base.py", line 523, in __init__
self.set_yscale(yscale)
File "/Users/x/anaconda3/lib/python3.6/site-packages/matplotlib/axes/_base.py", line 1080, in cla
if mpl.rcParams['ytick.minor.visible']:
File "/Users/x/anaconda3/lib/python3.6/site-packages/matplotlib/axes/_base.py", line 2710, in grid
for _axis in self._get_axis_list():
File "/Users/x/anaconda3/lib/python3.6/site-packages/matplotlib/axis.py", line 1453, in grid
File "/Users/x/anaconda3/lib/python3.6/site-packages/matplotlib/axis.py", line 866, in set_tick_params
if 'direction' in kw:
File "/Users/x/anaconda3/lib/python3.6/site-packages/matplotlib/axis.py", line 681, in __get__
self.axes = axes
File "/Users/x/anaconda3/lib/python3.6/site-packages/matplotlib/axis.py", line 1792, in _get_tick
**kwargs : `~.text.Text` properties.
File "/Users/x/anaconda3/lib/python3.6/site-packages/matplotlib/axis.py", line 176, in __init__
("_get_text1", "label1"),
File "/Users/x/anaconda3/lib/python3.6/site-packages/matplotlib/axis.py", line 474, in _get_tick1line
self._loc = loc
File "/Users/x/anaconda3/lib/python3.6/site-packages/matplotlib/lines.py", line 397, in __init__
self._invalidy = True
File "/Users/x/anaconda3/lib/python3.6/site-packages/matplotlib/markers.py", line 227, in __init__
self.set_fillstyle(fillstyle)
File "/Users/x/anaconda3/lib/python3.6/site-packages/matplotlib/markers.py", line 264, in set_fillstyle
cbook._check_in_list(self.fillstyles, fillstyle=fillstyle)
AttributeError: module 'matplotlib.cbook' has no attribute '_check_in_list'
Кто-нибудь может помочь? Большое спасибо заранее.
Комментарии:
1. Эта проблема не поддается воспроизведению. Какая версия matplotlib и панд? В командной строке conda выполните
conda update --all
и выберитеy
для обновления.2. Панды: 1.1.4; matplotlib: 2.2.2, я использовал
pip3
их для установки.3. Нет, не делай этого. Я вижу, что вы используете дистрибутив anaconda. Вы улучшите свою среду, используя pip для установки / обновления пакетов, которые уже являются частью anaconda. Правильный путь-с
conda update --all
помощью .4. Похоже, что обновление пакетов conda происходит очень медленно. Так что я привык использовать пип.
5. Это потому, что conda проверяет все зависимости для среды. Как я уже сказал, не используйте pip для обновления / переустановки пакетов, уже имеющихся в дистрибутиве anaconda. Весьма вероятно, что вам потребуется удалить / переустановить Anaconda.