Day42.数据可视化

数据可视化



前言

数据可视化简单的说就是将数据呈现为漂亮的统计图表,然后进一步发现数据中包含的规律以及隐藏的信息。之前的课程,我们已经为大家展示了Python在数据处理方面的优势,为大家介绍了NumPy和Pandas的应用,以此为基础,我们可以进一步使用MatplotlibSeaborn来实现数据的可视化,将数据处理的结果展示为直观的可视化图表。


一. Matplotlib的应用

1.1 安装和导入

对于使用Anaconda的用户,在安装Anaconda时已经携带了数据分析和可视化的库,无需再单独安装Matplotlib。如果没有安装Anaconda但是有Python环境,可以使用Python的包管理工具pip来安装,命令如下所示。

pip install matplotlib

接下来,我们在Jupyter Notebook中用下面的方式导入Matplotlib。

from matplotlib import pyplot as plt

通过下面的魔法指令,可以让创建的图表直接内嵌在浏览器窗口中显示。

%matplotlib inline

通过下面的魔法指令,可以生成矢量图(SVG)。

%config InlineBackend.figure_format='svg'

1.2 绘图的流程

  1. 创建画布
  2. 绘制图像
  3. 显示(保存)图像

1.3 绘制的例子

plt.figure()  # 创建幕布
plt.plot(x,y)  # 折线图,x,y 表示数据,自己定义
plt.savefig()  # 图片保存 
plt.show()   # 图片显示

1.4 解决中文显示问题

import matplotlib as mpl

mpl.rcParams['font.sans-serif'] = ['SimHei']  # 截距`中文`显示问题
mpl.rcParams['axes.unicode-minus'] = False  # 解决`负号`显示问题

1.5 定制图表效果

plt.plot(x,y,color='red',label='标签',r='o-')

1.6 图形的种类和意义

  1. 绘制散点图
  2. 绘制柱状图
  3. 绘制直方图
  4. 绘制饼图

1.7 显示多个坐标系

import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(-np.pi,np.pi,100)
data1 = np.exp(x)
data2 = np.sin(x)
plt.figure(figsize=(9,6))
plt.rcParams['font.size'] = 16 # 设置整体字体⼤⼩

ax1 = plt.gca() # 获取当前轴域
ax1.set_xlabel('time(s)') # 设置x轴标签
ax1.set_ylabel('exp', color='red') # 设置y轴标签
ax1.plot(x, data1, color='red') # 数据绘制
ax1.tick_params(axis='y', labelcolor='red') # 设置y轴刻度属性

ax2 = ax1.twinx() # 创建新axes实例,共享x轴,并设置
ax2.set_ylabel('sin', color='blue')
ax2.plot(x, data2, color='blue')
ax2.tick_params(axis='y', labelcolor='blue')

plt.tight_layout() # 紧凑布局
plt.show()  # 图片显示

二. Seaborn的应用

Seabron库主要是基于Matplotlib库搭建的,算是一个对Matplotlib库使用函数的封装,使用起来更加简单,但是使用方法类似,这里不详细介绍,有兴趣的小伙伴可以看官方文档。


总结

今天主要是学习了数据可视化的两个最常使用的库以及他们的一些简单使用。对于Matplotlib来说,由于是基础库,所以你的发挥空间会非常大,可以构造自己 想要的各种图形,区别与Seabron库来说,他更像是提供了所有的素材,任你发挥;而对于Seaborn库来说,就像是一个快餐,其实里面的内容也很丰富,但是已经十分固定了,也就是使用的上限不高,适用于新手,拿来就用,效果也不错,对于大神来说,肯定自己用Matplotlib库自己创造新图更舒服。当然了,这个库使用了那么久了,很多常见图形,其实网上都有代码的,可以拿来直接使用,避免反复造轮子。

溜了遛了,脑壳疼。Loading(42/100)。。。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值