python用matplotlib画皮卡丘_Python 绘图,我只用 Matplotlib

d058ccbf6c81800a6433b502008c47ff838b4722.jpeg?token=a24d1dd3b61e9a1700d47cf61e669bfb&s=FD3F30D48A768CCE5F1FA3830300B08E

散点图

散点图显示两组数据的值,如图1-1所示。每个点的坐标位置由变量的值决定,并由一组不连接的点完成,用于观察两种变量的相关性。例如,身高—体重、温度—维度。

342ac65c103853439eea617c25aac47bcb808881.jpeg?token=21255532d819b61195f0184938996ac7&s=5C28347297F348210EF5B0C70100C0B1

图1-1 散点图示例

使用Matplotlib的scatter()函数绘制散点图,其中x和y是相同长度的数组序列。scatter()函数的一般用法为:

主要参数说明如下:

x,y:数组。s:散点图中点的大小,可选。c:散点图中点的颜色,可选。marker:散点图的形状,可选。alpha:表示透明度,在 0~1 取值,可选。linewidths:表示线条粗细,可选。

示例:绘制身高—体重的散点图

c995d143ad4bd11347820e41e316d00a4afb05b0.jpeg?token=7d441d66a8819a69b85faa70007e831a&s=B5F0CB301B026D645A7D84DA000010B2

运行脚本输出如图1-2所示的图形。

314e251f95cad1c843cf635ac887130cc83d5192.png?token=1b8cb60f370f6067b5e5716a2bc0c52b&s=59A83C72333B402848F1B1DA030080B2

图1-2 基本的散点图

散点图主要演示两个变量的相关性:正相关、负相关、不相关。

示例:显示y=2x+1的图形

Matplotlib中最基础的模块是Pyplot, 下面从最简单的线图开始讲解。例如,有一组数据,还有一个拟合模型,通过编写代码来实现数据与模型结果的可视化。

假设一个线性函数具有形式y=ax+b, 自变量是x,因变量是y,y轴截距为b,斜率为a。

下面用简单的数据来描述线性方程y=2x+1,代码如下:

bd3eb13533fa828bf24298d645a63531960a5ae4.jpeg?token=e2325cc643d11854c88c55c812a42a25&s=BDA8593319026564587580DA0000C0B1

运行脚本输出如图2-2所示的图形。

a8773912b31bb051ace00d6481c3aeb148ede0f1.png?token=6f2f9874edfc24853494f382427ee060&s=58283472C51B626F1CF5F4CA030080B3

图2-2 基本直线图

在图2-2中,使用线性方程y=2x+1画出的是直线图。如果想画出曲线图,则只需更改线性方程为

,完整代码如下:

b90e7bec54e736d1e10e30082de93bc7d46269d4.jpeg?token=54a4d17237bcdeaab33e6cfeef58eb73&s=BDA85833C902676414D580DA0000C0B1

运行脚本输出如图2-3所示的图形。

a6efce1b9d16fdfa191d5c500236f85195ee7b5e.jpeg?token=7d513e0e607a2077d4175e11d5a71c5a&s=5DAC34727B1B504D1A55D1DA0000E0B3

图2-3 曲线图

9d82d158ccbf6c81a0be797a0a87c53031fa40d1.jpeg?token=3e51bc356693121714c6750b27c8ac4a&s=1A0A5723956349194CD9ECD7000080B1

直方图

直方图由一系列高度不等的纵向条形组成,表示数据分布的情况。例如,某年级学生的身高分布情况,如图4-1所示。

42a98226cffc1e1751e84473ff298206728de959.png?token=d7287d56fbe6d49ad165680c2e59967c&s=1AAA74238BE76D0B4C7CE0D30300C0B0

图4-1 直方图

直方图与柱状图的区别有以下几点:

1. 柱状图是用条形的长度表示各类别频数的多少,其宽度(表示类别)是固定的,主要是展示不同类别的数据。

2. 直方图是用面积表示各组频数的多少,矩形的高度表示每一组的频数 ( 或频率 ),宽度则表示各组的组距,因此其高度与宽度均有意义。

3. 由于分组数据具有连续性,因此直方图的各矩形通常是连续排列,而柱状图则是分开排列。

4. 柱状图主要用于展示分类型数据,而直方图主要用于展示数据型数据。

使用Matplotlib的hist()函数绘制直方图,hist()函数的一般用法为:

b2de9c82d158ccbfd5534511ae61c83bb0354169.png?token=6b3f3df4cb09853a656c8ae73245c6e5

主要参数说明如下:

bins:直方图中箱子 (bin) 的总个数。个数越多,条形带越紧密。

color:箱子的颜色。

normed:对数据进行正则化。决定直方图y轴的取值是某个箱子中的元素的个数 (normed=False), 还是某个箱子中的元素的个数占总体的百分比 (normed=True)。

在介绍直方图之前,先来了解什么是正太分布。

正态分布也称常态分布,是连续随机变量概率分布的一种,自然界、人类社会、心理和教育中的大量现象均按正态形式分布。例如,能力的高低、学生成绩的好坏等都属于正态分布。正态分布曲线呈钟形,两头低,中间高,左右对称。因其曲线呈钟形,所以人们又经常称之为钟形曲线,如图4-2所示。

503d269759ee3d6da4e6a197ffaf19274e4ade8d.jpeg?token=b24cc89df5c0b1f3c2f29d5278d968ba&s=59AC347209F47E985FD198C70000E0A2

图4-2 正态分布的钟形曲线

正态分布有两个参数,即均值和标准差。均值是正态分布的位置参数,描述正态分布的集中趋势位置。概率规律为:取与均值越近的值的概率越大,而取离均值越远的值的概率越小。

标准差描述正态分布资料数据分布的离散程度,标准差越大,数据分布越分散;标准差越小,数据分布越集中。标准差也是正态分布的形状参数,标准差越大,曲线越扁平;反之,标准差越小,曲线越瘦高。

绘制直方图,需要使用NumPy的np.random.randn(N)函数,这个函数的作用就是从标准正态分布中返回N个样本值。

示例:直方图

本例文件名为

“PythonFullStackChapter07mpl_hist01”

显示直方图。其完整代码如下:

2934349b033b5bb547908895816aa13cb700bc51.jpeg?token=32693c5e0ddd3287f77c7f4ad915d5c9&s=BD885A3305DA44650CF1ADDA0000C0B3

运行脚本输出如图4-3所示的图形。

ae51f3deb48f8c54b8bcc99b809059f0e1fe7f51.png?token=bf8b2f8f8d5b6dc01f8e7723bbfe5b31&s=5AA83C622AD0F1987FC11CC70000E0A0

图4-3 直方图

如果你对 matplotlib 感兴趣

推荐订阅专栏《案例上手 Python 数据可视化》

扫码试读了解课程

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值