Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/318.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
多列绘图Python_Python_Python 3.x_Pandas_Dataframe_Graph - Fatal编程技术网

多列绘图Python

多列绘图Python,python,python-3.x,pandas,dataframe,graph,Python,Python 3.x,Pandas,Dataframe,Graph,我有以下表格中的数据: Year Month State Value 2001 Jan AK 80 2001 Feb AK 40 2001 Mar AK 60 2001 Jan LA 70 2001 Feb LA 79 2001 Mar LA

我有以下表格中的数据:

Year      Month      State    Value
2001       Jan        AK        80
2001       Feb        AK        40
2001       Mar        AK        60
2001       Jan        LA        70
2001       Feb        LA        79
2001       Mar        LA        69
2001       Jan        KS        65
.
.
这一数据仅适用于2001年,每个州重复数月

我想要一个基本图,其中包含这些数据,一个基于状态,X轴为月,Y轴为值

当我使用以下工具绘图时:

g = df.groupby('State')

for state, data in g:
    plt.plot(df['Month'], df['Value'], label=state)

plt.show()
我得到一张看起来很不稳定的图表

我知道,根据这些单独的绘图,它们的行为没有太大的不同,但它们甚至没有接近如此多的重叠


有没有办法构建更多的连续绘图?

您的问题是,在for循环中,您引用的是
df
,该循环仍然包含所有状态的数据。尝试:

for state, data in g:
    plt.plot(data['Month'], data['Value'], label = state)
plt.legend()
plt.show()

希望这有帮助

因为它绘制月份的行,所以例如,首先
(1月,10日)
,然后
(1月,30日)
,然后
(1月,80日)
,然后行移动到
(2月,70日)
,等等。我是否需要进行一些日期时间替换以使其连续?您为groupby使用的
“区域”
变量是什么?这将有助于再现性(或只是原始数据集)。抱歉,我已更正了正确的格式。国家而不是地区。这只是纠正了问题,而不是代码中的问题。