来来来!学matplotlib之3D图

作者: 雨路浅歌 | 来源:发表于2018-10-16 09:27 被阅读36次

最近一直在忙大创的事情,很久都没有写文章了,抱歉哈!今天我们来聊聊matplotlib中的3D图。既然3D图都摆上桌面了,那么就意味着其它类型的图(比如雷达图、热力图等等)我就不会在matplotlib这个系列介绍了,我打算把它们放到seaborn和pyecharts系列来介绍。因为都是可视化专题,我不可能把所有类型的图都在每一个单元介绍一遍,这样是没有意义的。那好,言归正传,接下来和我一起来学习3D图吧。

散点图

每介绍一个专题,我都会从最简单的着手,我个人认为在3D图中,散点图是最简单的,下面给出代码示例和结果。

代码很简单,我就不做过多的介绍了,只给大家一个温馨提示,如果想要放大或旋转图片,可以将%matplotlib inline改为%matplotlib notebook。

折线图

下面利用折线图来画一个弹簧

绘制弹簧最核心的思路就是利用了公式

曲面图

在3D绘图中,曲面图可以说是一种非常常用的图片类型,下面来看一个简单的例子。

可以看到,曲面其实就是由这两条曲线围成的一个区域。

下面和大家一起来画一个球。

采用笛卡尔坐标来绘制球体是比较困难的,在这里我们采用的是球坐标,用到的最关键的数学公式是

至于公式是怎样推出来的,这个我想难不倒聪明的蛇友,实在不明白的话就上网查找吧,在这里我就不做过多的解释了。还有一个问题是,不知道大家明不明白np.outer的用法?如果不明白就看看下面的例子吧。

线框图

线框图可以说是曲面图的一个简化版,我们还是采用球体的数据来绘制线框图。

柱形图

柱形图的参数和上面两种图的参数不一样,它除了需要x,y,z的坐标之外,还需要我们提供dx,dy,dz参数,简单地说就是长宽高。

体素图

其实我也不太清楚这种图的名称,暂且就叫做体素图吧。

体素图相对来说还是比较难以理解的,先给大家看一个简单的例子吧。

voxels的参数必须是三维的数组,True表示有体素,False表示没有。数组中的一维部分的元素个数对应的是层数,二维部分的元素个数对应沿着y轴方向的排数,三维部分的元素个数对应沿着x轴方向的排数。

有了上面的知识之后,我们就可以来骚一波了。一时兴起,我就画了个长城。

我知道画得不像,大家就权当看着玩好了。

好吧,今天就先跟大家聊到这,下期我们不见不散!

python小白联盟

相关文章

  • 来来来!学matplotlib之3D图

    最近一直在忙大创的事情,很久都没有写文章了,抱歉哈!今天我们来聊聊matplotlib中的3D图。既然3D图都摆上...

  • 来来来!学matplotlib之饼图

    大家好,好久不见,今天来学习饼图。 还是老规矩,先来画一个非常简单的饼图,在此基础上逐步扩展。注释我都写得很清楚了...

  • 来来来!学matplotlib之柱形图

    大家好,今天进入新章节的学习,我们来学习matplotlib这个库,想必大家对这个著名的库都有所耳闻,它是pyth...

  • 2019-10-31 画有意思的图

    使用Matplotlib绘制3D图形 【matplotlib】 之 清理、清除 axes 和 figure (pl...

  • matplotlib

    转自简书好友,如有不妥,请联系改之 本文演示matplotlib提供的3D可视化功能实现,包含主要的9中3D图: ...

  • 来来来!学matplotlib之散点图

    这几天太忙了,已经两天没有更新,心想再不更新你们可能就要取关了,吓得我连夜写了这篇小短文。好吧,废话不多说了,开始...

  • python 绘制三维图形、三维数据散点图

    1. 绘制3D曲面图 from matplotlib import pyplot as plt import nu...

  • 来来来!学matplotlib之箱线图

    大家好,今天和大家一起来学习一种比较少见的图形——箱线图,人如,哦,不不,图如其名,这家伙长这样。 因为不知道大家...

  • MLP-04: Matplotlib的3D可视化

    本文演示matplotlib提供的3D可视化功能实现,包含主要的9中3D图:  1. 3D曲线图  2.3D散点图...

  • 来来来!学matplotlib之折线图

    今天给大家带来的内容是绘制折线图,在进入正题之前,首先来补充条形图的绘制,因为条形图和柱形图的绘制过程基本一致,所...

网友评论

    本文标题:来来来!学matplotlib之3D图

    本文链接:https://www.haomeiwen.com/subject/bquczftx.html