1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > 【Python数据处理篇——DataFrame数据可视化】饼图 散点图 折线图 柱形图 直方图

【Python数据处理篇——DataFrame数据可视化】饼图 散点图 折线图 柱形图 直方图

时间:2019-02-25 04:40:13

相关推荐

【Python数据处理篇——DataFrame数据可视化】饼图 散点图 折线图 柱形图 直方图

欢迎访问我搞事情的【知乎账号】:Coffee

以及我的【B站漫威剪辑账号】:VideosMan

若我的笔记对你有帮助,请用小小的手指,点一个大大的赞哦。

关于DataFrame的相关知识,我还进行了汇总,欢迎点赞收藏!!

【Python学习笔记—保姆版】第四章—关于Pandas、数据准备、数据处理、数据分析、数据可视化

Python数据处理篇——DataFrame数据可视化

5、数据可视化相关注意4.5.1 饼图:plt.pie(gb2.人数,labels=gb2.index,autopct='%.2f%%',colors=['b','pink',(0.5,0.8,0.3)],explode=[0,0,0,0,0.1])4.5.2 散点图:plt.plot(df.高代,df.数分,'o',color='pink')4.5.3 折线图:plt.plot(df.学号,df.总分,'-',color='r')4.5.4 柱形图:plt.bar(df.学号后三位,df.总分,width=1,color=['r','b'])4.5.5 直方图:plt.hist(df2.C语言程序设计,bins=10,color='g',cumulative=True)

5、数据可视化

相关注意

4.4Python数据处理篇之Matplotlib系列(四)—plt.bar()与plt.barh条形图

拉出长画布

fig = plt.figure(figsize=(12,4)) # 设置画布大小

调整标签字体大小

plt.tick_params(axis='x', labelsize=8) # 设置x轴标签大小

标签旋转

plt.bar(df['sport_type'], df['score'])

4.5.1 饼图:plt.pie(gb2.人数,labels=gb2.index,autopct=‘%.2f%%’,colors=[‘b’,‘pink’,(0.5,0.8,0.3)],explode=[0,0,0,0,0.1])

饼图(Pie Graph):又称圆形图,是一个划分为几个扇形的圆形统计图,它能够直观的反映个体与总体的比例关系

pie(x,labels,colors,explode,autopct)x 进行绘图的序列labels饼图的各部分标签colors饼图的各部分颜色,使用GRB标颜色explode 需要突出的块状序列autopct 饼图占比的显示格式,%.2f:保留两位小数

import numpy as npimport pandas as pdimport matplotlib.pyplot as pltdf = pd.read_excel(r'E:\Python\第4章数据\rz4.xlsx')dfgb=df.groupby(by=['班级'])['学号'].agg([('人数',np.size)])

plt.pie(gb.人数,labels=gb.index,autopct='%.2f%%',colors=['b','pink',(0.5,0.8,0.3)],explode=[0,0.2,0])

练习

df2= pd.read_excel(r'E:\Python\第4章数据\09电动1.xls')df2['C语言程序设计']=pd.cut(df2.C语言程序设计,bins=[0,60,70,80,90,101],right=False,labels=['不及格','及格','中等','良好','优秀']) #right=False 控制左闭右开gb2=df2.groupby(by=['C语言程序设计'])['学号'].agg([('人数',np.size)]).fillna(0) #fillna(0)填充空值plt.pie(gb2.人数,labels=gb2.index,autopct='%.2f%%',colors=['b','pink',(0.5,0.8,0.3)],explode=[0,0,0,0,0.1])plt.rcParams['font.sans-serif']=['SimHei'] #字体plt.rcParams['font.size']=30 #字体大小plt.rcParams['figure.figsize']=[6,6] #正圆

plt.rcParams,显示设值字体的东西

plt.rcParamsplt.rcParams['font.sans-serif']Out[43]: ['DejaVu Sans','Bitstream Vera Sans','Computer Modern Sans Serif','Lucida Grande','Verdana','Geneva','Lucid','Arial','Helvetica','Avant Garde','sans-serif']plt.rcParams['font.sans-serif']=['SimHei']plt.rcParams['font.sans-serif']=['SimHei','...','...'] #没有的往后找

4.5.2 散点图:plt.plot(df.高代,df.数分,‘o’,color=‘pink’)

散点图(scatter diagram):是以一个变量为横坐标,另一个变量为纵坐标,利用散点(坐标点)的分布形态反映变量关系的一种图形。

plot(x,y, '. ',color=(r,g,b))plt.xlabel('x轴坐标')plt.ylabel('y轴坐标')plt.grid(Ture)x、y X轴和Y轴的序列'. '、'o'小点还是大点Color 散点图的颜色,可以用rgb定义,也可以用英文字母定义RGB颜色的设置:(red,green,blue) 红绿蓝颜色组成

df = pd.read_excel(r'E:\Python\第4章数据\rz4.xlsx')dfgb=df.groupby(by=['班级'])['学号'].agg([('人数',np.size)])plt.plot(df.英语,df.数分,'.',color='g')plt.xlabel('英语')plt.xlabel('数分')plt.plot(df.高代,df.数分,'o',color='pink')plt.plot(df.高代,df.数分,'o',color='pink')

plt.plot(df.高代,df.数分,'-',color='pink') #连线

4.5.3 折线图:plt.plot(df.学号,df.总分,‘-’,color=‘r’)

df = pd.read_excel(r'E:\Python\第4章数据\rz4.xlsx')dfplt.plot(df.学号,df.总分,'-',color='r')

学号 班级 姓名 性别 英语 体育 军训 数分 高代 解几 计算机基础 总分

0 2308024241 23080242 成龙 男 76 78 77 40 23 60 89 443

1 2308024244 23080242 周怡 女 66 91 75 47 47 44 82 452

2 2308024251 23080242 张波 男 85 81 75 45 45 60 80 471

3 2308024249 23080242 朱浩 男 65 50 80 72 62 71 82 482

4 2308024219 23080242 封印 女 73 88 92 61 47 46 83 490

5 2308024201 23080242 迟培 男 60 50 89 71 76 71 82 499

6 2308024347 23080243 李华 女 67 61 84 61 65 78 83 499

7 2308024307 23080243 陈田 男 76 79 86 69 40 69 82 501

8 2308024326 23080243 余皓 男 66 67 85 65 61 71 95 510

9 2308024320 23080243 李嘉 女 62 60 90 60 67 77 95 511

10 2308024342 23080243 李上初 男 76 90 84 60 66 60 82 518

11 2308024310 23080243 郭窦 女 79 67 84 64 64 79 85 522

12 2308024435 23080244 姜毅涛 男 77 71 87 61 73 76 82 527

13 2308024432 23080244 赵宇 男 74 74 88 68 70 71 85 530

14 2308024446 23080244 周路 女 76 80 77 61 74 80 85 533

15 2308024421 23080244 林建祥 男 72 72 81 63 90 75 85 538

16 2308024433 23080244 李大强 男 79 76 77 78 70 70 89 539

17 2308024428 23080244 李侧通 男 64 96 91 69 60 77 83 540

18 2308024402 23080244 王慧 女 73 74 93 70 71 75 88 544

19 2308024422 23080244 李晓亮 男 85 60 85 72 72 83 89 546

df=df.sort_values('学号')

df['学号后三位']=df.学号.astype(str).str.slice(-3,) #分离学号后三位,并加入新一列(不会影响df)plt.plot(df.学号后三位,df.总分,'-',color='r') #画图plt.xticks(rotation=60) #标签旋转度数

df2= pd.read_excel(r'E:\Python\第4章数据\09电动1.xls')plt.plot(df2.姓名,df2.C语言程序设计,'--',color='g')plt.xlabel('姓名')plt.ylabel('C语言程序设计')plt.xticks(rotation=90)plt.rcParams['font.sans-serif']=['SimHei']plt.rcParams['figure.figsize']=[10,6]

4.5.4 柱形图:plt.bar(df.学号后三位,df.总分,width=1,color=[‘r’,‘b’])

柱形图用于显示一段时间内的数据变化或显示各项之间的比较情况,是一种单位长度的长方形,根据数据大小绘制的统计图,用来比较两个或以上的数据(时间或类别)。

bar(left,height,width,color)barh(bottom,width,height,color)leftx轴的位置序列,一般采用arange函数产生一个序列height y轴的数值序列,也就是柱形图高度,一般就是我们需要展示的数据width 柱形图的宽度,一般设置为1即可color 柱形图填充颜色

df['学号后三位']=df.学号.astype(str).str.slice(-3,)plt.bar(df.学号后三位,df.总分,width=1,color=['r','b']) #柱形图plt.xticks(rotation=60)plt.barh(df.学号后三位,df.总分,0.6,color=['r','b']) #条形图

bar

barh

4.5.5 直方图:plt.hist(df2.C语言程序设计,bins=10,color=‘g’,cumulative=True)

直方图(Histogram):是用一系列等宽不等高的长方形来绘制,宽度表示数据范围的间隔,高度表示在给定间隔内数据出现的频数,变化的高度形态表示数据的分布情况。

用来查看数据的频率

hist(x,color,bins,cumulative=False)x 需要进行绘制的向量color 直方图填充的颜色bins 设置直方图的分组个数cumulative 设置是否累积计数,默认是False

df2= pd.read_excel(r'E:\Python\第4章数据\09电动1.xls')plt.hist(df2.C语言程序设计,bins=10,color='g',cumulative=False)plt.hist(df2.C语言程序设计,bins=10,color='g',cumulative=True)

cumulative=False

cumulative=True

bins=20

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。