在pylab.p中使用dataframe列名作为标签

2024-06-16 10:00:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我想将数据绘制在数据框中,并将列标题作为标签。我试过这个:

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

但得到这个:

enter image description here

我不希望两行都被标记为['a','b'],而是希望使用pylab将蓝线标记为a,将绿线标记为b


Tags: columns数据标记标题plot绘制标签left
1条回答
网友
1楼 · 发布于 2024-06-16 10:00:03

我认为这是在你没有显示的部分代码中设置数据的方式。

这里有一个例子,我在这个例子中使用了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()

相关问题 更多 >