Pandas/Python-生成图表
所以我想从一个csv数据文件中生成一个图表,我一直在遵循一个指南,但我似乎无法以这种方式操纵我的代码来获得我想要的 以下是我到目前为止的情况:Pandas/Python-生成图表,python,pandas,matplotlib,Python,Pandas,Matplotlib,所以我想从一个csv数据文件中生成一个图表,我一直在遵循一个指南,但我似乎无法以这种方式操纵我的代码来获得我想要的 以下是我到目前为止的情况: from pandas import DataFrame, read_csv import matplotlib.pyplot as plt import pandas as pd import sys import matplotlib df = pd.read_csv("TB_burden_countries_2018-03-06.csv")
from pandas import DataFrame, read_csv
import matplotlib.pyplot as plt
import pandas as pd
import sys
import matplotlib
df = pd.read_csv("TB_burden_countries_2018-03-06.csv")
df = df.set_index(['country'])
df2 = df.loc["Zimbabwe", "e_mort_num"]
df2 = df.loc["Zimbabwe", "e_mort_num"]
df = pd.DataFrame(data = df2, columns= ["e_mort_num"])
df.columns = ["Mortality"]
print(df2)
这段代码只是为了让我可以选择一个特定的国家(津巴布韦)并查看其人口数量(e_mort_num)。我可以编写什么来生成图表?我一直在使用本教程:,但是我在操作变量名时遇到了问题,我不太确定我应该做什么。如果您需要更多信息,请说明。谢谢你的帮助
CSV兴趣点:
Country Year Mortality
Zimbabwe 2000 20000
Zimbabwe 2001 18000
Zimbabwe 2002 17000
Zimbabwe 2003 19000
Zimbabwe 2004 19000
Zimbabwe 2005 22000
Zimbabwe 2006 24000
Zimbabwe 2007 24000
Zimbabwe 2008 23000
Zimbabwe 2009 17000
Zimbabwe 2010 13000
Zimbabwe 2011 14000
Zimbabwe 2012 14000
Zimbabwe 2013 11000
Zimbabwe 2014 11000
Zimbabwe 2015 9000
Zimbabwe 2016 5600
假设您的数据帧如下所示:
>>> df
Country Year Mortality
0 Zimbabwe 2000 20000
1 Zimbabwe 2001 18000
2 Zimbabwe 2002 17000
3 Zimbabwe 2003 19000
4 Zimbabwe 2004 19000
5 Zimbabwe 2005 22000
6 Zimbabwe 2006 24000
7 Zimbabwe 2007 24000
8 Zimbabwe 2008 23000
9 Zimbabwe 2009 17000
10 Zimbabwe 2010 13000
11 Zimbabwe 2011 14000
12 Zimbabwe 2012 14000
13 Zimbabwe 2013 11000
14 Zimbabwe 2014 11000
15 Zimbabwe 2015 9000
16 Zimbabwe 2016 5600
可以使用以下代码获取条形图:
# Plot mortality per year:
plt.bar(df['Year'], df['Mortality'])
# Set plot title
plt.title('Zimbabwe')
# Set the "xticks", for barplots, this is the labels on your x axis
plt.xticks(df['Year'], rotation=90)
# Set the name of the x axis
plt.xlabel('Year')
# Set the name of the y axis
plt.ylabel('Mortality')
# tight_layout makes it nicer for reading and saving
plt.tight_layout()
# Show your plot
plt.show()
这就给了你:
您能否发布
df2.head(10)
和df.head(10)
的输出,并澄清“图表图形”是否指条形图?什么类型的图形?您好,是的,我指的是条形图。关于df2(10)或df(10)的输出,它实际上太大,无法发布ehre([10行x 70列]),因为我正在分析世界卫生组织的数据,但是,让我发布上述代码国家津巴布韦20000津巴布韦18000津巴布韦17000津巴布韦19000津巴布韦19000津巴布韦22000津巴布韦24000津巴布韦24000津巴布韦23000津巴布韦17000津巴布韦13000津巴布韦14000津巴布韦14000津巴布韦11000津巴布韦11000津巴布韦9000津巴布韦5600姓名:e_mort_num,数据类型:int64
对此表示抱歉。x值是几年,所以从2000年到2016年。哇,太神奇了,这正是我想要的!非常感谢您的盛情款待,非常感谢!不客气!在以后的文章中,如果你发布一个最小的例子(就像你最后做的那样),这样人们就可以玩它了,这会有很大帮助。