2016-04-30 3 views
0

Я черчения 2D Numpy массивов с использованиемдобавить легенда Numpy массив в matplot Lib

import numpy as np 
import matplotlib.pyplot as plt 

x = np.array([1,2,3]) 
y = np.array([[2,2.2,3],[1,5,1]]) 
plt.plot(x,y.T[:,:]) 
plt.legend() 
plt.show() 

Я хочу, чтобы легенда, которая рассказывает, какая линия принадлежит к какой строке. Конечно, я понимаю, что я не могу назвать его значимыми именами, но мне нужен какой-то уникальный ярлык для линии без пробега.

ответ

1
import numpy as np 
import matplotlib.pyplot as plt 
import uuid 

x = np.array([1,2,3]) 
y = np.array([[2,2.2,3],[1,5,1]]) 

fig, ax = plt.subplots() 
lines = ax.plot(x,y.T[:,:]) 
ax.legend(lines, [str(uuid.uuid4())[:6] for j in range(len(lines))]) 


plt.show() 

example output

(Это от текущего MPL главной ветви с предварительным просмотром стилей в 2,0 по умолчанию)

+0

ОП попросил уникальные этикетки, так что эти этикетки гарантированно быть уникальным;) – tacaswell

+0

ued '[j + 1 для j в диапазоне (len (lines))]', который является достаточно уникальным. Спасибо – DeanLa

+0

Чувствую себя немного славным сегодня, по-видимому .... – tacaswell

Смежные вопросы