数据分析---matplotlib

                                                数据分析---matplotlib

今天学习的是matplotlib,因为以前接触过,这次学习也相当是对以前学过的进行复习

1、什么是matplotlib

最流行的Python底层绘图库,主要做数据可视化图表,名字取材于MATLAB,模仿MATLAB构建。

能将数据进行可视化,直观的呈现,使数据更加客观、更具说服力

2、matplotlib基本要点

首先是导入:from matplotlib import pyplot as plt

plt.plot(x,y)通过plot,传入x,y参数来绘制折线图

x,y分别表示x轴和y轴的数据,如果绘制出来的数据在坐标轴上显示的太密集,可以采取步长的方式使其变得稀疏【::数值】

 

 

有时候会出现中文不显示的情况:

         警告原因,plt 画图是找不到字体,需要手动设置:

第一种方法:

试过了一下,这个是最方便省事的,不过有时候不一定能成功!

第二种方法:

其中路径是去电脑中找的一个存在的字体

这种方法比较麻烦,需要每次都设置:

一般都是在后边加fontproperties=my_font,但是!添加图例的字体需要简写成prop=my_font

loc="upper left"调整图例的位置为左上角:

假设大家在30岁的时候,根据自己的实际情况,统计出来了从11岁到30岁每年交的女()朋友的数量如列表a,请绘制出该数据的折线图,以便分析自己每年交女()朋友的数量走势

a = [1,0,1,1,2,4,3,2,3,4,4,5,6,5,4,3,3,1,1,1]

要求:y轴表示个数 ,x轴表示岁数,比如11,12岁等

要点:plt.xticks(x[::2],_xtick_labels[::2],fontproperties=my_font)  x[::2] , _xtick_labels[::2]个数需要一一对应

plt.title("11-30岁交往女朋友的变化趋势",fontproperties=my_font)#添加标题

plt.xlabel("11-30岁",fontproperties=my_font)#为x轴添加信息

plt.ylabel("交往女朋友的个数",fontproperties=my_font)#为y轴添加信息

#绘制网格

plt.grid(alpha=0.5,linestyle=":")#alpha 0-1 越接近0 透明度越低,linestyle=":"表示网格是点状化

#添加图例

plt.legend(prop=my_font,loc="upper left")#只有在plt.legend()让中文显示是prop= loc="upper left"调整位置为左上角

 

matplotlib能够绘制折线图,散点图,柱状图,直方图,箱线图,饼图等

但是,我们需要知道不同的统计图到底能够表示出什么,以此来决定选择哪种统计图更直观的呈现我们的数据

 

折线图:以折线的上升或下降来表示统计数量的增减变化的统计图

特点:能够显示数据的变化趋势,反映事物的变化情况(变化)

直方图:一系列高度不等的纵向条纹或线段表示数据分布的情况。

一般用横轴表示数据范围,纵轴表示分布情况

特点:绘制连续性的数据,展示一组或者多组数据的分布状况(统计)

条形图:排列在工作表的列或行中的数据可以绘制到条形图中

特点:绘制离散的数据,能够一眼看出各个数据的大小,比较数据之间的差别(统计)

散点图:用两组数据构成多个坐标点,考察坐标点的分布,判断两变量

之间是否存在某种关联或总结坐标点的分布模式

特点:判断变量之间是否存在数量关联趋势,展示离群点(分布规律)

绘制散点图

最重要的就是plt.scatter()  效果图为:

绘制条形图

重要点:plt.bar(),其中设置粗细为width,效果如下:

如果像想绘制横的:plt.barh(),其中设置粗细为height,

要点:

 

        bar_width=0.2

x_14=list(range(len(a)))

x_15=[i+bar_width for i in x_14]

x_16=[i+0.4 for i in x_14]

这样设置的原因是:因为有三个对象,每个对象设置最大为0.33,+0.2和+0.4是错开,否则会重叠

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值