via:
量子位,编译:
晓查
数据可视化本来是一个非常复杂的过程,但随着Pandas数据框plot()函数的出现,使得创建可视化图形变得很容易。
最近,一位来自印度的小哥以2019年世界幸福指数的数据为例,详细讲述了在Pandas中plot()函数的绘制常用图形的小技巧,熟练掌握这些技巧后,你也能绘制出丰富多彩的可视化图表。
导入数据
在绘制图形前,我们首先需要导入csv文件:
import pandas as pd
df=pd.read_csv(‘./world-happiness-report-2019.csv’)
df.head(3)
这个csv图表的内容是各个国家按照不同维度评价的幸福指数(数据下载地址
https://share.weiyun.com/5XazJL1
):
数据
框
中一些列的名称比较冗长,可以重命名使其更加简洁:
df.rename(columns={“Country (region)”: “Country”, “Log of GDP\nper capita”: “Log_GDP_per_capita”, “Healthy life\nexpectancy”:”Health_life_expect”},inplace=True)
df.columns
绘制柱状图、散点图等常见图形
从最近简单的
柱状图
开始,只统计腐败程度、自由度、宽容度、社会支持等几个维度
%matplotlib tk
df1=df[:5]
df1.plot(‘Country’,[‘Corruption’,’Freedom’,’Generosity’,’Social support’],kind = ‘bar’)
嫌直接写名称太麻烦?没关系,我们也可以用所在列的数字来绘制,比如上述4个列分别为7、6、8、5:
%matplotlib tk
df1=df[:5]
df1.plot(‘Country’,[7,6,8,5],kind = ‘bar’)
在上面的代码中
kind = ‘bar’
,所以绘制的图形是柱状图,如果我们把参数改成
kind = ‘line’
,画出的就是
折线图
。
df1=df[:5]
df1.plot(‘Country’,[‘Corruption’,’Freedom’,’Generosity’,’Social support’],kind = ‘line’)
同样的,如果把参数改成
kind = ‘box’
,还能绘制出箱线图:
df[:5].plot(x=’Country’,kind=’box’)
对于散点图,设置
kind=’scatter’
,绘制出腐败程度与自由度之间的关系,用
color=’R’
将点定义为红色:
df.plot(x=’Corruption’,y=’Freedom’,kind=’scatter’,color=’R’)
-------------------------
希望学习更多python数据可视化技巧的,可以跟着数据分析专家文彤老师学习《Python数据分析—玩转数据可视化》视频课程