Python 蟒蛇熊猫-Don';y轴值上的t排序条形图
我是Python初学者。我有一个系列的日期和一些观察计数如下Python 蟒蛇熊猫-Don';y轴值上的t排序条形图,python,Python,我是Python初学者。我有一个系列的日期和一些观察计数如下 Date Count 2003 10 2005 50 2015 12 2004 12 2003 15 2008 10 2004 05 我想用条形图(x轴表示年份,y轴表示计数)绘制一个图表,以找出年份的计数。我正在使用下面的代码 import pandas as pd pd.value_counts(sfdf.
Date Count
2003 10
2005 50
2015 12
2004 12
2003 15
2008 10
2004 05
我想用条形图(x轴表示年份,y轴表示计数)绘制一个图表,以找出年份的计数。我正在使用下面的代码
import pandas as pd
pd.value_counts(sfdf.Date_year).plot(kind='bar')
我得到的是根据计数自动排序的条形图。因此,我无法清楚地想象数年来的分布情况。有什么方法可以停止按计数对条形图上的数据进行排序,而是按x轴值(即年份)进行排序?下面的代码使用
groupby()
将同一年的多个实例连接在一起,然后在groupby()对象上调用sum()
。默认情况下,groupby()
将分组对象推送到数据帧索引。我认为groupby()
会自动排序,但以防万一,sort(axis=0)
会对索引排序。剩下的就是策划。一网打尽:
df = pd.DataFrame([[2003,10],[2005,50],[2015,12],[2004,12],[2003,15],[2008,10],[2004,5]],columns=['Date','Count'])
df.groupby('Date').sum().sort(axis=0).plot(kind='bar')
我知道这是一个老问题,但万一有人还在寻找另一个答案 我通过添加
.sort\u索引(axis=0)
因此,与此相反:
pd.value_counts(sfdf.Date_year).plot(kind='bar')
你可以这样写:
pd.value_counts(sfdf.Date_year).sort_index(axis=0).plot(kind='bar')
希望,这有帮助。文件中的列没有正确分开,是csv文件还是txt文件?!