Python数据分析之初识可视化

一、数据可视化概述
数据可视化是在整个数据分析非常重要的一个辅助工具,可以清晰的理解数据,从而调整我们的分析方法 。
- 能将数据进行可视化,更直观的呈现
- 使数据更加客观、更具说服力
例如下面两个图为数字展示和图形展示:

Python数据分析之初识可视化

文章插图
 

Python数据分析之初识可视化

文章插图
 
二、Python中的数据可视化(Matplotlib)
数据可视化与python语言也有相应的结合,这就是今天我们要说的Matplotlib.
[Matplotlib官网](https://matplotlib.org/)
Matplotlib是一个Python 2D绘图库,它可以在各种平台上以各种硬拷贝格式和交互式环境生成出具有出版品质的图形 。Matplotlib可用于Python脚本,Python和IPython shell,Jupyter笔记本,Web应用程序服务器和四个图形用户界面工具包 。
Matplotlib试图让简单的事情变得更简b单,让无法实现的事情变得可能实现 。只需几行代码即可生成绘图,直方图,折线图,条形图,错误图,散点图等 。
为了简单绘图,pyplot模块提供了类似于MATLAB的界面,特别是与IPython结合使用时 。对于高级用户,您可以通过面向对象的界面或MATLAB用户熟悉的一组函数完全控制线条样式,字体属性,轴属性等 。
在使用Matplotlib之前,我们需要有一些准备的步骤,因为Matplotlib包不在python原生包含范围之内
1. Python环境是使用anaconda安装的并创建了虚拟环境 。
Python数据分析之初识可视化

文章插图
 
> 注意:windows下切换环境,不需要加source 。
2. 如果是直接在官网下载并安装的Python,可以直接`pip install Matplotlib`
三. 常见图形种类及意义
* 折线图:以折线的上升或下降来表示统计数量的增减变化的统计图
**特点:能够显示数据的变化趋势,反映事物的变化情况 。(变化)**
Python数据分析之初识可视化

文章插图
 
* 散点图:用两组数据构成多个坐标点,考察坐标点的分布,判断两变量之间是否存在某种关联或总结坐标点的分布模式 。
**特点:判断变量之间是否存在数量关联趋势,展示离群点(分布规律)**
Python数据分析之初识可视化

文章插图
 
* 柱状图:排列在工作表的列或行中的数据可以绘制到柱状图中 。
**特点:绘制连离散的数据,能够一眼看出各个数据的大小,比较数据之间的差别 。(统计/对比)**
Python数据分析之初识可视化

文章插图
 
* 饼图:用于表示不同分类的占比情况,通过弧度大小来对比各种分类 。
**特点:分类数据的占比情况(占比)**
Python数据分析之初识可视化

文章插图
 
四. Matplotlib画图的简单实现
```python?# 导入模块import matplotlib.pyplot as plt# 在jupyter中执行的时候显示图片%matplotlib inline# 传入x和y, 通过plot画图plt.plot([1, 0, 9], [4, 5, 6])# 在执行程序的时候展示图形plt.show()```
Python数据分析之初识可视化

文章插图
 
五. 对Matplotlib图像结构的认识
Python数据分析之初识可视化

文章插图
 
通常情况下,我们可以将一张Matplotlib图像分成三层结构:
1. 第一层是底层的容器层,主要包括Canvas、Figure、Axes;
2. 第二层是辅助显示层,主要包括axis、spines、grid、legend、title等;
3. 第三层为图像层,即通过plot、scatter等方法绘制的图像 。
六. 折线图
6.1 折线图的绘制
```pythonfrom matplotlib import pyplot as pltx = range(1,8) # x轴的位置y = [17, 17, 18, 15, 11, 11, 13]# 传入x和y, 通过plot画折线图plt.plot(x,y) plt.show()```6.2 折线的颜色和形状设置
```pythonfrom matplotlib import pyplot as pltx = range(1,8) # x轴的位置y = [17, 17, 18, 15, 11, 11, 13]# 传入x和y, 通过plot画折线图plt.plot(x, y, color='red',alpha=0.5,linestyle='--',linewidth=3) plt.show()'''基础属性设置color='red' : 折线的颜色alpha=0.5: 折线的透明度(0-1)linestyle='--' : 折线的样式linewidth=3: 折线的宽度''''''线的样式-实线(solid)--短线(dashed)-.短点相间线(dashdot):虚点线(dotted)'''```


推荐阅读