Python第12章 数据可视化

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一般而言,使用linespace()函数时,通常只写前两个参数start和stop
绘制简单图
12.2.3 在一张图上绘制多条折线
调用多个plot( )函数便可实现在一张图上绘制出多条折线 ➢ xlabel()函数表示设置横轴坐标; ➢ ylabel()函数表示设置纵轴坐标; ➢ legend()函数表示设置图例,图例的名称要以列表的格式传入。 我们将三条折线分别命名为’First’,‘Second’和‘Third’,图中 左上角部分就表示legend
第12章 数据可视化
目录
CONTENT
01
02
03
04
安装matplotlib模块
matplotlib是Python中最常 用的可视化工具之一,功
能非常强大
绘制简单图
plot语法结构、绘制函数图、 在一张图上绘制多条折线图、 subplot语法、绘制其他类型图
实现随机漫步
随机漫步算法描述。绘制随机 漫步图、模拟多次随机漫步、
设定折线的宽度
drawstyle
指定画图的格式,如drawstyle='steps-post',即阶梯图线
ms 或者 markersize
设定大小
mec 或者 markeredgecolor
设定边框的颜色
mew 或者 markeredgewidth
设定边框粗细的值
mfc 或者 markerfacecolor
➢ 然后,我们将两个列表[1,2,3,4]和[4,3,2,1]传递给函数 plot(),这两个列表分别作为样本点的横轴坐标和纵轴坐标
➢ 最后,plot()会将这四个点[1,4],[2,3],[3,2],[4,1]连接 成线。plt.show()表示打开matplotlib查看器,并显示绘 制的图形。
➢ 安装语句:(进入cmd命令下,输入如下命令)
python –m pip install matplotlib
matplotlib
安装 matplotlib
模块
➢ cmd下通过运行命令python –m pip list,从而检查matplotlib是否已经安装
➢ 在Jupyter notebook的环境下测试matplotlib 包是否正确安装时,只需要在Jupyter notebook中输入import matplotlib语句,如果没有报错,说明matplotlib已经正确安装。
➢ 图 表 的 整 个 绘 图 区 域 被 分 成 行 ( numRows ) 和 列 (numCols);按照从左到右,从上到下的顺序对每个子 区域进行编号,左上的子区域的编号为1;plotNum 参数 指定创建的 Axes 对象所在的区域
(1,1) subplot(2,3,1)
(2,1) subplot(2,3,4)
绘制随机漫步散点图
Pygal实现数据可视化
安装Pygal、Pygal绘图简介、 模拟掷骰子、同时掷两个骰子、
同时掷两个面数不同的骰子
01
安装matplotlib模块
matplotlib是Python中最常用的可视化工具之一, 功能非常强大
matplotlib
安装 matplotlib
模块
➢ matplotlib是Python中最常用的可视化工具之一,功能非常强大,可以方便地绘制折线图、条形图、柱形图、 散点图、盒图等2D图形,还可以绘制基本的3D图形。maplotlib是Python数据可视化的基础库,在它的基础 上又衍生出了多个数据可视化的工具集。
02
绘制简单图
plot语法结构、绘制函数图、在一张图上绘制多 条折线图、subplot语法、绘制其他类型图
绘制简单图
绘制简单图
绘制折线的步骤可分为两步:描点,连线。人工进行折线绘制时就是遵循这个步骤进行的。如果直接 给出样本点横纵坐标,可以通过这两步直接进行绘图;但当给出的是折线方程时,需要先计算一下各个样 本点的坐标,再描点和绘图。其实利用程序进行绘图也是根据这个原理。那接下来,我们就学习一下如何 利用matplotlib进行绘图。
设定线的颜色。w:white白色,b:blue蓝色,g:green绿色,r:红色red,c:cya青色/蓝绿色, m:magenta品红/洋红色,y:yellow黄色,k:black黑色
marker 设定节点的样式。常用的有 ^:三角形,*:星型,v:下三角,o:圆形,D:菱形,-:虚线,.:点
alpha legend
12.2.5 绘制其他类别图形——散点图+折线图
在数据分析领域,经常将折线图与散点图结合用于展示数据拟合
➢ 图中有10个离散点,用蓝色实心点表示;另有一条曲线对这10 个点进行了拟合,用红色短横线表示,拟合函数为 plot.scatter(x,y1)用于生成散点图,plot.plot(x,y2)用于生成折线 图。
在绘制图形之前,首先要引入matplotlib包:import matplotlib.pyplot。现在,我们从最简单的折线图讲 起。
绘制简单图
绘制简单图
已知样本点的横轴坐标值为[1,2,3,4],纵轴坐标值为[4,3,2,1],如何绘制这条折线呢?
➢ 首先使用import matplotlib.pyplot as plt导入模块 pyplot,并指定别名为plt,以免反复输入pyplot;
➢ np.cos表示余弦函数cos,np.pi表示π,np.exp(-x)表 示e的(-x)次方。
➢ plot()中对于颜色和横线样式的描述很灵活,'--'表示 短横线,'r'表示线条颜色为红色,'r--'就表示线条样 式为红色短横线,写为'--r'亦可。
12.2.2 绘制函数图
绘制简单图
linspace函数表示在指定的间隔内返回均匀间隔的数字序列,其语法格式为:
语法格式:matplotlib.pyplot (x,y,format_string,**kwargs)
➢ x表示横轴坐标数据,或列表,或数组,可选; ➢ y表示纵轴坐标数据,或列表,或数组,y与x必须为相同长度; ➢ format_srting表示控制折线的格式字符串,可选; ➢ **kwargs表示第二组或更多(x,y,format_string)。
ቤተ መጻሕፍቲ ባይዱ
12.2.4 subplot绘制子图
绘制简单图
第一张子图中的曲线方程为 y1 x2 sin( x), x [0,6]
第二张子图中的曲线方程为 y2 x2 6x 2, x [0,6]
➢ 通过使用matplotlib模块中的subplot()函数,我们就可以实 现在一个 Figure 对象中包含多个子图(Axes),其调用形式 为subplot(numRows, numCols, plotNum)
✓ 引入语句:import numpy as np,即引入numpy包,并命名为np。调用numpy中函数时,格式需写为 :np.函数名(参数)。
12.2.2 绘制函数图
绘制简单图
我们来绘制方程式为 y cos(2 x)ex, x [0,5] 的曲线图
➢ numpy中函数非常丰富,有三角函数、指数函数等, 甚至可以表示它们复合的复杂函数。
linspace(start, stop, num = 50, endpoint = True, retstep = False, dtype = None)
➢ start:数字序列的起始值; ➢ stop:数字序列的结束值。当'endpoint = False'时,不包含该点; ➢ num:要生成的样本数。默认是50; ➢ endpoint:bool型,如果是True,'stop'是最后样本;否则不包含'stop'; ➢ retstep:bool型,表示显示步长,默认为Flase。
(1,2) subplot(2,3,2)
(2,2) subplot(2,3,5)
(1,3) subplot(2,3,3)
(2,3) subplot(2,3,6)
绘制简单图
12.2.5 绘制其他类别图形——散点图(scatter)
语法结构
matplotlib.pyplot.scatter(x, y, s=None, c=None, marker=None, cmap=None, norm=None,vmin=None, vmax=None, alpha=None, linewidths=None,verts=None, edgecolors=None, hold=None, data=None, **kwargs)
✓ NumPy(Numerical Python) 是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,并提 供大量的数学函数库。Numpy包含四大核心功能:一个强大的N维数组对象 ndarray;广播功能函数; 整合 C/C++/Fortran 代码的工具;线性代数、傅里叶变换、随机数生成等功能。在这里我们仅利用 numpy配合matplotlib进行绘图,并未涉及其最为核心的代数运算,因此如果同学们有兴趣深入研究 numpy的话,可以登录官网/进行学习。
设定图的透明度,取值范围是[0,1] 设置图例名称及位置
12.2.1 plot语法结构
绘制简单图
参数名
参数含义及用法
ls 或者 linestyle lw 或者 linewidth
设定折线的格式,[文字表述版为'solid', 'dashed', 'dashdot', 'dotted'],符号表述版[ '-', '--', '-.', ':'];
增加样式
绘制简单图
我们将折线颜色设置为红色,用短横线相连,并用圆圈标注 给出的各个样本点的坐标,设置横轴名称为x,纵轴名称为y ,图的标题(title)为Demo,折线名称(又称为图例)为 line,在画布中添加网格(grid)
12.2.1 plot语法结构
绘制简单图
利用matplotlib进行绘图的关键是pyplot。pyplot是命令样式函数的集合,使matplotlib像MATLAB一样工作。 每个pyplot函数对图形进行一些更改:例如,创建图形,在图形中创建绘图区域,在绘图区域中绘制一些线条, 用标签装饰图形等。
12.2.1 plot语法结构
绘制简单图
参数名
label title
y x
color
参数含义及用法
设定坐标线的标签, 例:plt.plot(x1, y1, label='x的label')
设定标题。例:plt.title('title_name')
纵坐标,可直接输入数据,也可用方程表示
横坐标,默认为[0, 1, ... , N-1],也可手动设定
➢ 只不过在实际应用中,拟合函数通常是由某种算法计算生成的, 为方便展示,本文在此处直接给出。此外,在legend()函数中, 我们用loc参数设置图例的位置,loc=‘best’表示最佳位置,即 程序会根据图中曲线的位置选择最佳的图例位置
设定填充的颜色
ax.set_xlable
设定ax(子图)x坐标的名称
ax.set_ylable
设定ax(子图)y坐标的名称
ax.set_xlim
限制x轴的坐标范围
ax.set_ylim
限制y轴的坐标范围
12.2.2 绘制函数图
绘制简单图
➢ 在实际绘图过程中,当给出的是方程式,而不是直接给出横纵坐标的数据时,这样就需要使用函数进行绘 图。这样的话,我们需要借助Numpy包。
➢ x,y:表示输入数据,对应了平面点的位置; ➢ s:控制点大小,默认是20; ➢ c:颜色指示值,可以设置c=x可以定义渐变色; ➢ marker:控制点的形状; ➢ cmap:调整渐变色或者颜色列表的种类; ➢ alpha:控制点的透明度; ➢ norm:控制亮度0-1,float数据。
绘制简单图
绘制简单图
12.2.3 在一张图上绘制多条折线
共享坐标轴折线图
➢ 我们绘制了两条曲线 y ex 和 y sin(2 x) ,主要利用了
twinx函数
➢ twinx()函数是subplot()函数的其中一个子函数,表示共享x 轴,其中“共享”的含义就是多条线共用同一刻度线,代 码中,fig,ax1=plt.subplots()表示将plt.subplots()函数的返 回值赋值给fig和ax1两个变量,通常,我们只用到ax1。 ax2=ax1.twinx表示ax1和ax2共用同一个x轴。接下来,再 利用ax1.plot()和ax2.plot()进行绘图即可
相关文档
最新文档