Я пытаюсь сделать ошибку с различными маркерными цветами в python 2.7. Кроме того, я включаю в линейные графики. Я нашел здесь путь: matplotlib errorbar plot - using a custom colormap, используя график рассеяния для цветов и errorbar() для баров.matplotlib одна легенда запись слишком много
Как вы можете видеть в моем примере кода, в легенде я всегда получаю одну запись слишком много (просто вверху). Почему я не могу понять. Пытался исключить его, что не сработало. Не нашел и ничего полезного, так как я не могу назвать первую запись легенды.
Любые идеи?
Вот мой код:
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
%matplotlib inline
data = pd.DataFrame()
data['x'] = range(10)
data['y'] = data.x
data['err'] = .5
data['col'] = np.where(data.y<5,'r','b')
### setup 1-1 line
lin = pd.DataFrame() # setting 1-1 line
lin['x'] = range(10)
lin['y'] = range(10)
### setup 1-2 line
lin['x2'] = lin.x
lin['y2'] = lin.y
plt.errorbar(data.x, data.y, yerr = data.err, \
xerr = .3, fmt=' ', markersize=4, zorder = 1)
plt.scatter(data.x,data.y, marker='o', color = data.col, zorder = 2)
plt.plot(lin.x,lin.y,'g-')
plt.plot(lin.x2,1.8*lin.y2,'r-')
plt.legend(['','1-1 line', '1-1.8 line','holla','molla'], loc=4)
Что я получаю:
Спасибо за вашу помощь!
Я не могу воспроизвести это с помощью вашего кода. – tom
работает просто отлично для меня как со шпионом, так и с jupyter. numpy: 1.11.0, pandas: 0.18.0, mpl: 1.3.1, может быть разница версий? – Robert
Да, это работает, но я не получаю дополнительную запись легенды – tom