Python笔记:matplotlib 三维图表绘制方法简介

Python绘制三维图像实例 Python的Matplotlib库是一个比较强大的绘图库,可以比较好的代替Matlab实现绘图功能。 阅读详情

1. python三维图表绘制方法简介

python三维图表的绘制算是二维图表的一个进阶版本,本质上和二维图表的绘制并无差别,唯一的区别在于使用的库略有差异。

相较于二维图表使用的pyplot库,三维图表的绘制使用的是Axes3D库。

库引入语句为:

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

上下的操作就和二维图表绘制大差不差了,首先定义三维画布,然后向里面绘制三维图表,最后打印出结果即可。

下面,我们通过一些实例来进行说明。

2. 实例说明

1. 三维曲线图绘制

首先,我们来看一下三维曲线图的绘制。

三维曲线图的绘制和二维曲线图的绘制方法极其相似,只是我们需要做以下两点修改:

  1. 将画布修改为三维坐标系;
  2. 传参时同时传入x、y、z三个维度的坐标信号。

另外,plot函数需要修改三维曲线绘制的Axes3D.plot函数。

给出代码样例如下:

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

theta = numpy.linspace(0, 3.14*4, 200)
r = numpy.linspace(0, 1, 200)
x = r * numpy.cos(theta)
y = r * numpy.sin(theta)
z = numpy.linspace(0, 2, 200)

fig = plt.figure(figsize=(12, 7))
ax1 = plt.axes(projection='3d')
ax1.plot(x, y, z)
plt.show()

运行即可得到一张三维曲线图。
在这里插入图片描述

2. 三维散点图绘制

下面,我们来看一下三维空间中的散点图绘制方法。

其方法其实挺简单的,就是先绘制x、y面的网点坐标,计算相应的z轴高度,而后创建一张三维图,然后通过Axes3D.scatter函数进行散点图绘制即可。

我们给出具体的代码样例如下:

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

x = numpy.linspace(-2, 2, 10)
y = numpy.linspace(-2, 2, 10)
xx, yy = numpy.meshgrid(x, y)
z = xx ** 2 - yy ** 2

fig = plt.figure(figsize=(12, 7))
ax1 = plt.axes(projection='3d') # 创建三维坐标轴
ax1.scatter(xx, yy, z) # 绘制三维散点图
plt.show()

运行即可得到三维散点图。
在这里插入图片描述

3. 三维曲面图绘制

三维曲面图的绘制与三维极其类似,只需要将Axes3D.scatter函数替换为Axes3D.plot_surface函数即可。

我们就不再多做解释了,直接给出代码样例如下:

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

x = numpy.linspace(-2, 2, 10)
y = numpy.linspace(-2, 2, 10)
xx, yy = numpy.meshgrid(x, y)
print(xx.shape, yy.shape)
z = xx ** 2 - yy ** 2

fig = plt.figure(figsize=(12, 7))
ax1 = plt.axes(projection='3d') # 创建三维坐标轴
ax1.plot_surface(xx, yy, z) # 绘制三维曲面图
plt.show()

运行即可得到三维曲面图。
在这里插入图片描述

3. 参考链接

  1. https://matplotlib.org/tutorials/toolkits/mplot3d.html
  2. Python三维绘图–Matplotlib
python(matplotlib)三维图像绘制,旋转坐标轴视角,坐标轴拉伸,缩放比例 先上最终效果图: 根据最常规的代码,我们得到的初始效果应该是下图: import numpy as np import matplotlib.pyplot as plt xs1 = np.ones(100) ys1 = range(1, 101) zs1 = np.zeros(100) xs2 = np.ones(100) * 2 ys2 = range(1, 101) zs2 = np.zeros(100) xs3 = np.ones(100) * 3 ys3 = range(1, 101) zs 阅读详情

相关推荐

python怎样画立体图-如何用Matplotlib 画三维图的示例代码

用Matplotlib画三维图最基本的三维图是由(x, y, z)三维坐标点构成的线图与散点图,可以用ax.plot3D和ax.scatter3D函数来创建,默认情况下,散点会自动改变透明度,以在平面上呈现出立体感三维的线图和散点图#绘制三角螺旋线from mpl_toolkits import mplot3d%matplotlib inlineimport matplotlib.pyplot a...

q6q6q的专栏 2756

python数据可视化雷达图程序_Python数据可视化之matplotlib

常用模块导入import numpy as npimport matplotlibimport matplotlib.mlab as mlabimport matplotlib.pyplot as pltimport matplotlib.font_manager as fmfrom mpl_toolkits.mplot3d import Axes3D解决显示异常问题中文乱码myfont = fm...

weixin_39747296的博客 614

Python可视化:Matplotlib绘制简单图表

Matplotlib 是一个 Python 的绘图库,主要用于创建静态、动画和交互式可视化图表。它提供了丰富的绘图接口,支持多种图表类型,包括折线图、柱状图、散点图、饼图、直方图等。Matplotlib 的设计灵感来源于 MATLAB,因此它的 API 对于熟悉 MATLAB 的用户来说非常友好。Matplotlib 的核心模块是,它提供了一个类似 MATLAB 的绘图接口,适合快速创建简单的图表。此外,Matplotlib 还支持更高级的绘图功能,例如自定义图表样式、创建动画和交互式图表。

ifree_code的博客 754

【Python】三维绘图

Python三维绘图介绍及实现

332295505的博客 9334

Python 里 Matplotlib 绘制医学图表的方法

本文章的目的是全面介绍如何使用 Python 的 Matplotlib 库绘制医学图表。范围涵盖了常见医学图表类型,如折线图、柱状图、散点图、箱线图、直方图等的绘制方法。通过实际的代码示例和详细的解释,让读者能够掌握使用 Matplotlib 进行医学数据可视化的基本技能,并应用到实际的医学研究和临床工作中。

AI Python 编程之道的博客 522

Python matplotlib绘制三维线框图的美化技巧

本文的目的是帮助读者掌握使用Python的matplotlib库绘制美观三维线框图的技巧。范围涵盖了从基础的三维线框图绘制到各种美化手段,包括线条样式、颜色调整,以及添加标题、标签等细节处理。本文首先介绍三维线框图的核心概念,然后讲解绘制三维线框图的算法原理和具体操作步骤,接着分享美化三维线框图的技巧,再通过项目实战展示实际应用,最后对未来发展趋势与挑战进行分析,并进行总结和提出思考题。三维线框图:一种用于展示三维数据的图形,通过线条连接数据点来呈现数据的空间分布。matplotlib。

AI Python 编程之道的博客 1351

python绘制三维曲线图_Python笔记:matplotlib 三维图表绘制方法简介

1. python三维图表绘制方法简介python三维图表的绘制算是二维图表的一个进阶版本,本质上和二维图表的绘制并无差别,唯一的区别在于使用的库略有差异。相较于二维图表使用的pyplot库,三维图表的绘制使用的是Axes3D库。库引入语句为:from matplotlib import pyplot as pltfrom mpl_toolkits.mplot3d import Axes3D上下的...

weixin_39946996的博客 3937

WebRTC Qos优化杂记

本文是笔者对WebRTC Qos性能研究、优化的一些思考,希望对有兴趣的读者有一些启发。

sonysuqin的专栏 6677

【Python数据可视化】matplotlib之绘制三维图形:三维散点图、三维柱状图、三维曲面图

前面介绍了一些常用技巧、常见的图形(折线图、柱状图(条形图)、饼图和直方图)和高级的二维图形(散点图、热力图、等值线图),这篇分享一下如何绘制三维图形:三维散点图、三维柱状图、三维曲线图。三维图形需要用到中的Axes3D,也可以用前面介绍的二维方法创建三维图像,前提是要将子图的坐标轴改为三维坐标轴。

森林的博客——在完成之前,似乎总是不可能的~ 1万+

手把手教你用VSCode+SDL在Ubuntu上跑LVGL8.2模拟器(附插件清单)

本文详细介绍了在Ubuntu系统上使用VSCode和SDL库搭建LVGL8.2模拟器环境的完整流程,特别适合嵌入式开发者(如全志F1C100s平台)进行UI设计验证。从环境配置、项目编译到VSCode深度集成,提供了实用技巧和常见问题解决方案,帮助开发者实现'先模拟后真机'的高效开发模式。

weixin_33737134的博客 358

微生物组β-多样性——PCoA分析及可视化

让你的数据映入眼帘

qq_47369980的博客 1万+

Python 三维图表绘制指南

绘制多个数据集ax.scatter(x, y, z, c='r', marker='o', label='数据点1')ax.scatter(x+1, y+1, z+1, c='g', marker='^', label='数据点2')ax.legend() # 添加图例plt.show()通过本文的介绍,相信您已经掌握了如何使用 Python 中的 Matplotlib 绘制三维图表。我们讨论了三维散点图、线图、表面图、直方图等的绘制方法,并展示了如何自定义图表属性和设置图例。

chusheng1840的博客 2625

史上最全的Logisim存储系统实验教程(基于华中科技大学计算机组成原理实验)内赋源码下载

本博客是最全的最好的解释的华中科技大学计算机组成实验存储系统实验,本博客给出了电路实现,也给出了使用电路的原因有利于新手学习十分详细。并且内赋源码下载。

qq_62325622的博客 2万+

python matplotlib模块——绘制三维图形、三维数据散点图

python matplotlib模块,是扩展的MATLAB的一个绘图工具库。他可以绘制各种图形,可是最近最的一个小程序,得到一些三维的数据点图,就学习了下python中的matplotlib模块,如何绘制三维图形。 初学者,可能对这些第三方库安装有一定的小问题,对于一些安装第三方库经验较少的朋友,建议使用 Anaconda ,集成了很多第三库,基本满足大家的需求,下载地址,对应选择python

Eddy_zheng的博客 22万+

【G4基础08】GPS-2-Macro Commands宏命令

GPS-2

adelall的博客 3738

Unity类银河战士恶魔城学习总结(P162 Improve skeleton提升敌人的效果)

为敌人添加了快慢刀

suzh1qian的博客 572

Python数据分析40——Python绘制matplotlib三维图

Python绘制三维图 声明:本文是转载的。原作者是 hitrjj,原博客地址是 Python三维绘图–Matplotlib 。 1.创建三维坐标轴对象Axes3D 创建Axes3D主要有两种方式,一种是利用关键字projection='3d’l来实现,另一种则是通过从mpl_toolkits.mplot3d导入对象Axes3D来实现,目的都是生成具有三维格式的对象Axes3D. #方法一...

Py.ziMing的博客 1万+

任务混部最少服务器数量计算问题

这里的并行度指的是该任务运行时会占用的服务器数量。要注意的是,一个服务器在每个时刻可以被任意任务使用,但同一时刻最多只能被一个任务占用,并且任务运行结束后会立即释放服务器(结束时刻不占用)。最后,我们从字典中找出服务器数量的最大值,这个最大值就是完成这批任务混部最少需要的服务器数量。对于每个任务,我们会遍历其对应的时间区间,将该任务的并行度累加到对应时刻的服务器数量上。任务混部的目标是让这批任务由同一批服务器承载运行,你需要计算完成这批任务混部最少需要多少服务器,以此来最大化控制资源成本。

m0_62153576的博客 108

使用Matplotlib在Python中绘制三维散点图

在上面的示例中,我们使用ax创建了三维绘图。然后,我们使用randInt()函数创建了随机数的x、y和z坐标的数据集。大约在1.0版本发布时,通过在Matplotlib的二维显示器上分层一些三维图表工具,创建了一个实用的(尽管相当有限)三维数据可视化工具集。当我们有一个巨大的三维变量数据集,我们绘制它的图形时,它看起来非常分散,这被称为3D散点图。最简单的三维图是由(x,y,z)三元组的线或簇组成的散点图。Matplotlib是Python中的一个库,用于创建静态和动态动画,并使用其内置函数绘制。

std7879的博客 8532

《模型轻量化-剪枝蒸馏量化系列》YOLOv5无损剪枝(附源码)

无损剪枝模型到几百kb~

cv君的博客 3万+

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

python 3d图表_matplotlib 三维图表绘制方法简介

1. python三维图表绘制方法简介python三维图表的绘制算是二维图表的一个进阶版本,本质上和二维图表的绘制并无差别,唯一的区别在于使用的库略有差异。相较于二维图表使用的pyplot库,三维图表的绘制使用的是Axes3D库。库引入语句为:from matplotlib import pyplot as pltfrom mpl_toolkits.mplot3d import Axes3D上下的...

weixin_39595164的博客 270

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

Matplotlib绘制图表

Matplotlib 库功能十分强大,内容也非常多,本篇简单介绍一下各种常用图表的绘制。 Matplotlib是一个Python 2D绘图库,可以生成各种硬拷贝格式和跨平台交互式环境的出版物质量数据。Matplotlib可用于Python脚本,Python和IPython shell,Jupyter笔记本,Web应用程序服务器和四个图形用户界面工具包。 Matplotlib试图让简单易事的事...

Steven的博客 6102

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

如何使用Python的Matplotlib绘制图表?

在数据科学和分析领域,图表是展示数据最有效的方式之一。Python的Matplotlib库提供了强大的功能,帮助用户轻松地绘制各种类型的图表。无论你是需要简单的折线图,还是复杂的热力图,Matplotlib都能满足你的需求。

chromegw-com的博客 1558

Python之matplotlib工具包使用入门——绘制简单图表

matplotlib是Python中最常用的绘制图表的工具包,它提供一整套和MATLAB类似的绘图数据集,此外还有许多插件工具集,如绘制3D图形的mplot3,以及用于绘制地图的Catapy等,同时matplotlib还整合了LaTex,支持数学公式表达式。

m0_53156691的博客 3437

Python Matplotlib:基本图表绘制指南

Matplotlib 是一个 Python 库,可以轻松绘制静态、动态和交互式图表。它提供了灵活的绘图功能,尤其在数据科学和数据分析领域应用广泛。图例可以帮助我们更好地理解数据的含义。通过可以轻松添加图例。# 绘制多条折线图plt.plot(x, y1, label='平方', color='blue')plt.plot(x, y2, label='立方', color='green')plt.xlabel('X轴')plt.ylabel('Y轴')plt.title('带图例的折线图')

chusheng1840的博客 1496

在python用matplotlib库进行三维绘制

引用资料:python绘制三维图 - 桂。 - 博客园 一、初始化 假设已经安装了matplotlib工具包。 利用matplotlib.figure.Figure创建一个图框: 1 2 3 4 importmatplotlib.pyplot as plt frommpl_toolkits.mplot3dimportAxes3D fig=plt.figure() ax=fig.add_subplot(111...

qq_51971294的博客 1479
上一篇: Python笔记:matplotlib库绘图功能简介
下一篇: LeetCode笔记:Biweekly Contest 35 比赛记录
Espresso Macchiato
博客等级 码龄7年 2453粉丝 818原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值