Python 如何在具有列表值的列中创建多个线图?

Python 如何在具有列表值的列中创建多个线图?,python,pandas,Python,Pandas,我想知道如何绘制熊猫数据框架的多行图,其中列以列表为元素 例如,我可以使用此数据绘制两个图: 将numpy导入为np 作为pd进口熊猫 导入seaborn作为sns sns.set(颜色代码=真) 将matplotlib.pyplot作为plt导入 %matplotlib内联 df=pd.DataFrame({ "猪":[20,18,489,675,1776],, “马”:[4,252816001900]}, 指数=[1990、1997、2003、2009、2014]) df.plot.line

我想知道如何绘制熊猫数据框架的多行图,其中列以列表为元素

例如,我可以使用此数据绘制两个图:

将numpy导入为np
作为pd进口熊猫
导入seaborn作为sns
sns.set(颜色代码=真)
将matplotlib.pyplot作为plt导入
%matplotlib内联
df=pd.DataFrame({
"猪":[20,18,489,675,1776],,
“马”:[4,252816001900]},
指数=[1990、1997、2003、2009、2014])
df.plot.line()
但是,如何为以下数据绘制类似的两个图

df1 = pd.DataFrame({
    'pig': [[20, 18, 489, 675, 1776],[20, 18, 489, 675, 1776]],
    'horse': [[14, 25, 271, 700, 1900],[14, 65, 381, 600, 1900]]},
    index=['A','B']
    )

print(df1)
                        pig                     horse
A  [20, 18, 489, 675, 1776]  [14, 25, 271, 700, 1900]
B  [20, 18, 489, 675, 1776]  [14, 65, 381, 600, 1900]

对于每个索引A和B,我想要x轴=猪,y轴=马图。
但我不知道怎么做。非常感谢您的帮助。

您可以循环索引,但这不是熊猫的最佳做法,但它适用于您的情况:

import pandas as pd
import matplotlib.pyplot as plt

df1 = pd.DataFrame({
    'pig': [[20, 18, 489, 675, 1776],[20, 18, 489, 675, 1776]],
    'horse': [[14, 25, 271, 700, 1900],[14, 65, 381, 600, 1900]]},
    index=['A','B']
    )

for idx in df1.index.values:
    plt.plot(df1['pig'].loc[idx], df1['horse'].loc[idx], label=idx)
plt.legend()    
plt.xlabel('Pig')
plt.ylabel('Horse')
plt.show()