数据可视化

数据可视化

pandas的数据可视化使用matplotlib为基础组件,更基础的信息可参阅matplotlib相关内容。

导入matplotlib

%matplotlib inline#引入matplotlib
import pandas as pd 
import numpy as np

1. 线型图

ts=pd.Series(np.random.randn(1000),index=pd.date_range('2000/1/1',periods=1000))
ts=ts.cumsum()#累计求和
ts.describe()
ts.plot(title='cumsum',style='r-',figsize=(8,6))#画出这一组数字,tiltle设置名称,style设置颜色,figsize调整图的大小

在这里插入图片描述

df=pd.DataFrame(np.random.randn(1000,4),index=ts.index,columns=list("ABCD"))
df=df.cumsum()
df.describe()
df.plot()

在这里插入图片描述

df.plot(subplots=True,sharey=True)#subplots=True把每列单独画在一个子图里,sharey=True是让纵坐标变成一样的范围

在这里插入图片描述

df['ID']=np.arange(len(df))#给df新加一列叫ID
df.describe()
df.plot(x='ID',y=['A','C'])指定x轴是ID,y轴是只画出A和C

在这里插入图片描述

2.柱状图

df=pd.DataFrame(np.random.randn(10,4),columns=['A','B','C','D'])
df
df.iloc[0].plot(kind='bar')#iloc=0意思是以0为基准画的,类型是柱状图

在这里插入图片描述

df.plot.bar()

在这里插入图片描述

df.plot.bar(stacked=True)#画成堆叠起来的样子

在这里插入图片描述

df.plot.barh(stacked=True)#barh画呈水平方向

在这里插入图片描述

3.直方图

df=pd.DataFrame({'a':np.random.randn(1000)+1,'b':np.random.randn(1000),
                'c':np.random.randn(1000)-1},columns=['a','b','c'])
                df['a'].hist(bins=20)#画一个直方图,某个区间内的数字有多少。分20份

在这里插入图片描述

df.plot.hist(subplots=True,sharex=True,sharey=True,bins=50)#分50组

在这里插入图片描述

df.plot.hist(alpha=0.3)#加一个透明值

在这里插入图片描述

4. 密度图

df.plot.kde()#画出概率密度函数

在这里插入图片描述

5.散布图

df=pd.DataFrame(np.random.rand(10,4),columns=['a','b','c','d'])
df
df.plot.scatter(x='a',y='b')#散布图

在这里插入图片描述

df = pd.DataFrame(np.random.rand(10, 4), columns=['a', 'b', 'c', 'd'])
df.plot.scatter(x='a', y='b');


在这里插入图片描述

df = pd.DataFrame({'a': np.concatenate([np.random.normal(0, 1, 200), np.random.normal(6, 1, 200)]),
                  'b': np.concatenate([np.random.normal(10, 2, 200), np.random.normal(0, 2, 200)]),
                  'c': np.concatenate([np.random.normal(10, 4, 200), np.random.normal(0, 4, 200)])})
                  df.describe()
df.plot.scatter(x='a', y='b')

在这里插入图片描述

6.饼图

s=pd.Series(3*np.random.rand(4),index=['a','b','c','d'],name='series')
s
s.plot.pie()#画一个饼图

在这里插入图片描述

s.plot.pie(labels=['food','clothes','toy','cosmetic'],autopct='%0.2f',fontsize=20)#(labels,设置标签。显示百分比,fontsize设置一下字体大小

在这里插入图片描述

7.其他

高级绘图函数在 pandas.tools.plotting 包里。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值