pandas7 Pandas可视化

7.Pandas可视化

Pandas中集成了Matplotlib中的基础组件,绘图便捷。

线形图

线形图一般用于描述两组数据之间的趋势。Pandas库中的Series和DataFrame中都有绘制各类图表的plot方法,默认绘制线形图。

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
%matplotlib inline
#线形图Series
obj = pd.Series(np.random.normal(size=10))
obj.plot()

Series的线形图

# DataFrame
df = pd.DataFrame({'normal':np.random.normal(size=50),'gamma':np.random.gamma(1, size=50)})
df.plot()

DataFrame的线形图

柱状图

柱状图一般用来描述各类别之间的关系。在plot函数中加入参数kind='bar',如果类别较多,可以绘制水平柱状图(kind='barh')。
在DataFrame中绘制柱状图,对于DataFrame数据而言,每一行的值会成为一组。

# 柱状图  kind='bar'/'barh'  类别多少  rot:标签角度
stu = {'name':['孙尚香','李白','韩信','马克','妲己'],
       'sex':['female','male','male','male','female'],
       'age':[19,20,22,21,25]
       }
df = pd.DataFrame(stu)
print(df['sex'].value_counts())
print(df['sex'].value_counts().plot(kind='bar' ,rot=30))

DataFrame做柱状图
DataFrame数据对象的柱状图:观察图很显然那个图和数据直接是有很明显的对应关系的,一行是一组图。

# 直接DataFrame作图  类别多  水平柱状图
df = pd.DataFrame(np.random.randint(1,100, size=(4,4)), index=['a','b','c','d'], columns=['I1','I2','I3','I4'])
df.plot(kind='barh')

水平柱状图

直方图和密度图

直方图用于频率分布,Y轴为数值或者比率。绘制直方图可以先大致观察数据的大致分布规律。Pandas中的直方图有由hist方法绘制。
核密度估计是对真实密度的估计,其过程是将数据的分布近似为一组核(如正态分布)。通过plot的kind='kde'进行绘制。

# 直方图【hist  bins参数是y轴的值 grid是否有表格】
obj1 = pd.Series(np.random.normal(size=80))
obj1.hist(bins=15, grid=False)

hist直方图

#密度图【kind='kde'】
obj1.plot(kind='kde')

kde密度图

散点图

散点图主要用来表示数据之间的规律,plot(kind='scatter')

#kind = 'scatter'  不能是Sreries  还得给定x与y
df1 = pd.DataFrame(np.arange(10), columns=['A'])
df1['B'] = 2*df1['A']+2
print(df1)
df1.plot(kind='scatter',x='A',y='B')

scatter

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值