【深度学习】 Python 和 NumPy 系列教程(廿四):Matplotlib详解:2、3d绘图类型(10)3D箱线图(3D Box Plot)

news2024/11/15 1:45:29

目录

一、前言

二、实验环境

三、Matplotlib详解

1、2d绘图类型

2、3d绘图类型

0. 设置中文字体

1. 3D线框图(3D Line Plot)

2. 3D散点图(3D Scatter Plot)

3. 3D条形图(3D Bar Plot)

4. 3D曲面图(3D Surface Plot)

5. 3D等高线图(3D Contour Plot)

6. 3D向量场图(3D Vector Field Plot)

7. 3D表面投影图(3D Surface Projection Plot)

8. 3D饼图(3D Pie Chart)

9. 3D等高线投影图(3D Contour Projection Plot)

10. 3D箱线图(3D Box Plot)


一、前言

        Python是一种高级编程语言,由Guido van Rossum于1991年创建。它以简洁、易读的语法而闻名,并且具有强大的功能和广泛的应用领域。Python具有丰富的标准库和第三方库,可以用于开发各种类型的应用程序,包括Web开发、数据分析、人工智能、科学计算、自动化脚本等。

        Python本身是一种伟大的通用编程语言,在一些流行的库(numpy,scipy,matplotlib)的帮助下,成为了科学计算的强大环境。本系列将介绍Python编程语言和使用Python进行科学计算的方法,主要包含以下内容:

  • Python:基本数据类型、容器(列表、元组、集合、字典)、函数、类
  • Numpy:数组创建、数组操作、数组数学、广播
  • Matplotlib:2d绘图、3d绘图、图表自定义、多子图和布局、图表自定义、多子图和布局
  • IPython:创建笔记本、典型工作流程

二、实验环境

matplotlib3.5.3
numpy1.21.6
python3.7.16
  • 运行下述命令检查Python版本
 python --version 
  • 运行下述代码检查Python、NumPy、Matplotlib版本
import sys
import numpy as np
import matplotlib

print("Python 版本:", sys.version)
print("NumPy 版本:", np.__version__)
print("matplotlib 版本:", matplotlib.__version__)

三、Matplotlib详解

        Matplotlib是一个用于创建数据可视化的Python库。它提供了广泛的绘图选项,能够生成各种类型的图表、图形和可视化效果。下面是Matplotlib的一些主要功能:

  1. 绘图风格和类型:Matplotlib支持各种绘图风格和类型,包括线图、散点图、柱状图、饼图、等高线图、3D图等,可以根据需要选择适合的图表类型来展示和分析数据。

  2. 数据可视化:Matplotlib使得将数据转化为可视化表示变得简单,可以使用Matplotlib绘制图表来展示数据的分布、趋势、关系等,这有助于更好地理解数据和发现潜在的模式和关联。

  3. 图表自定义:Matplotlib提供了丰富的图表自定义选项,可以调整图表的标题、标签、坐标轴、线条样式、颜色等。这使得您能够创建符合特定需求和品味的高质量图表。

  4. 多子图和布局:Matplotlib允许您在单个图像中创建多个子图,以便同时展示多个相关的图表或数据视图。您可以自定义子图的布局和排列,以满足特定的展示需求。

  5. 导出图像:Matplotlib支持将图像导出为多种格式,包括PNG、JPEG、PDF、SVG等。这使得您可以方便地将生成的图表保存为文件,或嵌入到文档、报告和演示文稿中。

        无论是进行科学研究、数据分析、报告撰写还是可视化展示,Matplotlib都是一个强大而灵活的工具。它广泛应用于各个领域,如数据科学、机器学习、金融分析、工程可视化等。

1、2d绘图类型

2d绘图(上):折线图、散点图、柱状图、直方图、饼图_QomolangmaH的博客-CSDN博客​编辑https://blog.csdn.net/m0_63834988/article/details/132872575?spm=1001.2014.3001.5501​编辑https://blog.csdn.net/m0_63834988/article/details/132872575?spm=1001.2014.3001.5501icon-default.png?t=N7T8https://blog.csdn.net/m0_63834988/article/details/132872575?spm=1001.2014.3001.5501

2d绘图(下):箱线图、热力图、面积图、等高线图、极坐标图_QomolangmaH的博客-CSDN博客​编辑https://blog.csdn.net/m0_63834988/article/details/132890656?spm=1001.2014.3001.5501​编辑https://blog.csdn.net/m0_63834988/article/details/132890656?spm=1001.2014.3001.5501icon-default.png?t=N7T8https://blog.csdn.net/m0_63834988/article/details/132890656?spm=1001.2014.3001.5501

2、3d绘图类型

0. 设置中文字体

import matplotlib

matplotlib.rcParams['font.family'] = 'Microsoft YaHei'  # 设置为微软雅黑字体
matplotlib.rcParams['font.sans-serif'] = ['SimHei']     # 设置中文字体为黑体

        若不进行该设置,会报错字体缺失

1. 3D线框图(3D Line Plot)

3d绘图类型(1):线框图(Wireframe Plot)_QomolangmaH的博客-CSDN博客​编辑https://blog.csdn.net/m0_63834988/article/details/132890293?spm=1001.2014.3001.5501​编辑https://blog.csdn.net/m0_63834988/article/details/132890293?spm=1001.2014.3001.5501icon-default.png?t=N7T8https://blog.csdn.net/m0_63834988/article/details/132890293?spm=1001.2014.3001.5501

2. 3D散点图(3D Scatter Plot)

3d绘图类型(2)3D散点图(3D Scatter Plot)_QomolangmaH的博客-CSDN博客​编辑https://blog.csdn.net/m0_63834988/article/details/132891434?spm=1001.2014.3001.5501​编辑https://blog.csdn.net/m0_63834988/article/details/132891434?spm=1001.2014.3001.5501icon-default.png?t=N7T8https://blog.csdn.net/m0_63834988/article/details/132891434?spm=1001.2014.3001.5501

3. 3D条形图(3D Bar Plot)

3d绘图类型(3)3D条形图(3D Bar Plot)_QomolangmaH的博客-CSDN博客​编辑https://blog.csdn.net/m0_63834988/article/details/132890907?spm=1001.2014.3001.5502​编辑https://blog.csdn.net/m0_63834988/article/details/132890907?spm=1001.2014.3001.5502icon-default.png?t=N7T8https://blog.csdn.net/m0_63834988/article/details/132890907?spm=1001.2014.3001.5502

4. 3D曲面图(3D Surface Plot)

3d绘图类型(4)3D曲面图(3D Surface Plot)_QomolangmaH的博客-CSDN博客​编辑https://blog.csdn.net/m0_63834988/article/details/132891652?spm=1001.2014.3001.5501​编辑https://blog.csdn.net/m0_63834988/article/details/132891652?spm=1001.2014.3001.5501icon-default.png?t=N7T8https://blog.csdn.net/m0_63834988/article/details/132891652?spm=1001.2014.3001.5501

5. 3D等高线图(3D Contour Plot)

3d绘图类型(5)3D等高线图(3D Contour Plot)_QomolangmaH的博客-CSDN博客https://blog.csdn.net/m0_63834988/article/details/132891816?spm=1001.2014.3001.5501​编辑https://blog.csdn.net/m0_63834988/article/details/132891816?spm=1001.2014.3001.5501icon-default.png?t=N7T8https://blog.csdn.net/m0_63834988/article/details/132891816?spm=1001.2014.3001.5501

6. 3D向量场图(3D Vector Field Plot)

3d绘图类型(6)3D向量场图(3D Vector Field Plot)_QomolangmaH的博客-CSDN博客​编辑https://blog.csdn.net/m0_63834988/article/details/132891976?spm=1001.2014.3001.5501icon-default.png?t=N7T8https://blog.csdn.net/m0_63834988/article/details/132891976?spm=1001.2014.3001.5501

7. 3D表面投影图(3D Surface Projection Plot)

3d绘图类型(7)3D表面投影图(3D Surface Projection Plot)_QomolangmaH的博客-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/m0_63834988/article/details/132892116?spm=1001.2014.3001.5501

8. 3D饼图(3D Pie Chart)

3d绘图类型(8)3D饼图(3D Pie Chart)_QomolangmaH的博客-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/m0_63834988/article/details/132892244?spm=1001.2014.3001.5501

9. 3D等高线投影图(3D Contour Projection Plot)

3d绘图类型(9)3D等高线投影图(3D Contour Projection Plot)_QomolangmaH的博客-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/m0_63834988/article/details/132906474?spm=1001.2014.3001.5501

10. 3D箱线图(3D Box Plot)

import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D

# 准备数据
np.random.seed(123)
x = np.random.normal(0, 1, 100)
y = np.random.normal(0, 1, 100)
z = np.random.normal(0, 1, 100)

# 创建3D图像对象
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')

# 绘制3D Box Plot
ax.boxplot([x, y, z])

# 添加标签和标题
ax.set_xlabel('X')
ax.set_ylabel('Y')
ax.set_zlabel('Z')
ax.set_title('3D Box Plot')

# 显示图像
plt.show()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1013712.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

动态规划——01背包

背包问题经典资料背包九讲,可以上网查一下相关资料。 下面的资料来自代码随想录和自己的一些个人理解,如有需要可以跳转代码随想录进行学习:代码随想录 (programmercarl.com) 背包一共分为01背包,完全背包,多重背包&am…

leetcode:70. 爬楼梯

一、题目 函数原型:int climbStairs(int n) 二、思路 此题运用递归思想。当只有1个台阶,那么只有1种方法爬到楼顶——跨一个台阶;当有2个台阶时,有2种方法爬到楼顶——跨一个台阶跨两次或直接跨两个台阶。当有3个台阶或更多台阶时…

实现客户端pineline的思路

背景: redis集群不支持客户端的mget操作,但是业务上对这个redis集群的批量操作的需求一直都在,所以有各种客户端实现了各式各样的pineline实现,本文就记录下我们公司的实现方式 pineline实现思路 1.pineline要快 pineline之所以快是因为可…

深度学习训练过程可视化工具

1.深度学习网络结构画图工具 地址:https://cbovar.github.io/ConvNetDraw/ 2.caffe可视化工具 输入:caffe配置文件 输出:网络结构 地址:http://ethereon.github.io/netscope/#/editor 3.深度学习可视化工具Visual DL Visual D…

数据变换:数据挖掘的准备工作之一

⭐️⭐️⭐️⭐️⭐️欢迎来到我的博客⭐️⭐️⭐️⭐️⭐️ 🐴作者:秋无之地 🐴简介:CSDN爬虫、后端、大数据领域创作者。目前从事python爬虫、后端和大数据等相关工作,主要擅长领域有:爬虫、后端、大数据…

【毕设选题】flink大数据淘宝用户行为数据实时分析与可视化

文章目录 0 前言1、环境准备1.1 flink 下载相关 jar 包1.2 生成 kafka 数据1.3 开发前的三个小 tip 2、flink-sql 客户端编写运行 sql2.1 创建 kafka 数据源表2.2 指标统计:每小时成交量2.2.1 创建 es 结果表, 存放每小时的成交量2.2.2 执行 sql &#x…

【python手写算法】numpy实现简易神经网络和反向传播算法【1】

import numpy as npdef dense(A,W):Znp.matmul(A,W)#矩阵乘法return 1/(1np.exp(-Z))if __name__ __main__:leanring_rate100Anp.array([[200.0,17.0]])# Wnp.array([[1,-3,5],# [-2,4,-6]])# bnp.array([[-1,1,2]])W1 np.array([[0., -10, 4],[-1,3,2]])W2np.ar…

数学建模__非线性规划Python实现

使用到的是scipy库 线性规划指的是目标模型均为线性,除此以外的都是非线性规划,使用scipy提供的方法对该类问题进行求解。 from scipy.optimize import minimize import numpy as np#定义目标函数 def fun(args):a,b,c,d argsv lambda x: (ax[0])/ (b…

免费和开源的机器翻译软件LibreTranslate

什么是 LibreTranslate ? LibreTranslate 免费开源机器翻译 API,完全自托管。与其他 API 不同,它不依赖于 Google 或 Azure 等专有提供商来执行翻译。它的翻译引擎由开源 Argos Translate 库提供支持。 这个软件在 2022 年 3 月的时候折腾过&…

Vue 3的革命性新特性:深入了解Composition API

🌷🍁 博主猫头虎(🐅🐾)带您 Go to New World✨🍁 🦄 博客首页——🐅🐾猫头虎的博客🎐 🐳 《面试题大全专栏》 🦕 文章图文…

数据结构与算法——8.二分查找

这篇文章我们来讲一下数据结构与算法中的二分查找 目录 1.介绍 1.1背景介绍 1.2算法介绍 2.实现 3.几个问题 4.算法改进 4.1左闭右开版 4.2 平衡版 4.3 Leftmost版 4.4 Leftmost返回 i 版 5.小结 1.介绍 首先,我们来介绍一下二分查找 1.1背景介绍 需…

Marmof:AI写作助手文章内容生成器工具

【产品介绍】 名称 Marmof 具体描述 Marmof是一个AI驱动的写作平台,可以帮助你快速创建原创、无抄袭的网站、邮件、广告和博客内容。每月提供5000字的免费额度,永久有效。拥有超过49种强大的工具,可以为各种平台生成吸引人的内容…

界面组件DevExpress WinForms v23.1亮点 - 全新升级HTML CSS模板

DevExpress WinForms拥有180组件和UI库,能为Windows Forms平台创建具有影响力的业务解决方案。DevExpress WinForms能完美构建流畅、美观且易于使用的应用程序,无论是Office风格的界面,还是分析处理大批量的业务数据,它都能轻松胜…

Jupyter杂症二:目录不显示或展示不全

文章目录 序言一、问题表象二、解决及思考 有些问题,解法还真的是莫名其妙,就如同拍了一下电视机就好了。。。。。难道是在拍的时候,我们传了内力给了计算机? 序言 一、问题表象 二、解决及思考 用鼠标按住左键,在空…

vim,emacs,verilog-mode这几个到底是啥关系?

vim:不多说了被各类coder誉为地表最强最好用的编辑器;gvim,gui vim的意思; emacs:也是一个编辑器,类似vscode; vim在使用的时候为了增强其功能,有好多好多插件,都是以.…

Brother CNC联网数采集和远程控制

兄弟CNC IP地址设定参考:https://www.sohu.com/a/544461221_121353733没有能力写代码的兄弟可以提前下载好网络调试助手NetAssist,这样就不用写代码来测试连接CNC了。 以上是网络调试助手抓取CNC的产出命令,结果有多个行string需要自行解析&…

应用商店备案登记流程解析

​ 引言: 随着智能手机的普及和移动互联网的发展,移动应用程序(App)已成为人们日常生活中不可或缺的一部分。在开发一个App之后,开发者需要将其上传到应用商店进行审核和上架。然而,在上架之前&#xff0…

【云计算】虚拟私有网络 VPC

虚拟私有网络 VPC 1.VPC 简介1.1 VPC 相关基本概念1.2 其他相关基本概念 2.VPC 通信场景2.1 VPC 内部互通2.2 VPC 间互通2.2.1 对等连接2.2.2 Transit Gateway 或者云联网 2.3 访问 Internet2.3.1 Internet 网关2.3.2 NAT 网关 2.4 访问本地网络2.4.1 VPN 连接2.4.2 专线接入2.…

完美的分布式监控系统 Prometheus与优雅的开源可视化平台 Grafana

1、之间的关系 prometheus与grafana之间是相辅相成的关系。简而言之Grafana作为可视化的平台,平台的数据从Prometheus中取到来进行仪表盘的展示。而Prometheus这源源不断的给Grafana提供数据的支持。 Prometheus是一个开源的系统监控和报警系统,能够监…

ChatGPT在职业规划中的智能助手

随着科技的不断发展,人工智能(AI)正逐渐成为我们日常生活的一部分。ChatGPT作为一种智能语言模型,可以在职业规划中充当智能助手的角色。本文将探讨ChatGPT在职业规划中的应用,以及它如何成为未来工作的智能伙伴。 首先…