2015-10-08 4 views
2

Я хотел бы построить данные в кадре данных и присвоить заголовкам столбцов метки. Я попытался это:Использовать имена столбцов dataframe в качестве меток в pylab.plot

dfm.columns = ['a','b'] 
plot(dfm.cumsum(), label= dfm.columns.values) 
legend(loc='upper left') 

Но получилось так:

enter image description here

Вместо того, чтобы обе эти линии помечены [ «а», «б»], я хотел бы синюю линию, чтобы быть и зеленый цвет будет использоваться с помощью pylab

ответ

4

Я думаю, что у вас есть данные, созданные в части кода, который вы не показываете.

Вот пример, я использовал df.plot() в этом случае.

import pandas as pd 
import random 
import matplotlib.pyplot as plt 

x = [random.randint(10,20) for r in range(100)] 
y = [random.randint(0,10) for r in range(100)] 

df = pd.DataFrame([x,y]).T #T for transpose 

df.columns=['a','b'] 

df.plot(kind='line') 

plt.legend(loc='upper left') 

plt.show() 

enter image description here

Редактировать

pylab версия

import pandas as pd 
import random 
import matplotlib.pylab as plt 

x = [random.randint(10,20) for r in range(100)] 
y = [random.randint(0,10) for r in range(100)] 

df = pd.DataFrame([x,y]).T 

plt.plot(df) 

plt.legend(['a','b'],loc='upper left') 

plt.show() 
+0

df.plot() правильно показывает ярлыки, как вы говорите. сюжет (df) был тем, что я делал, и нет. Похоже, что «метка =» часть сюжета (...) звонка должна взять список или серию или что-то еще и применить значения согласно, но я не могу понять, как это сделать. – TPM

+0

Если это сработало, пожалуйста, примите ответ. – Leb

+0

Вопрос был частично о настройке меток в pylab.plot, и я до сих пор не знаю, как это сделать. Если кто-то пытается сделать то же самое, и я принимаю этот ответ, я не думаю, что это было бы правильно. Вы говорите, что ответ: «Вы не можете сделать это с помощью pylab.plot, вы должны использовать df.plot? – TPM

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