Mayavi入门之mlab.points3d

1.安装

距离我之前的 Mayavi入门 的帖子差不多两年了,最近需要用到Mayavi来作图。因此重新安装一下(之前如果安装过想更新最新版本的话,最好卸载干净,不然会有各种想象不到的问题)

1. 安装python

2,安装PyQt5,事实上Mayavi官方说支持PyQt4,Pyside,Pyside2等UI框架

pip install PyQt5

3,安装Mayavi,最新的版本是4.7版本,pip如果下载速度慢,可以换豆瓣的源,方法见我之前的帖子。

pip install Mayavi

2.mlab.points3d 函数详解

mayavi.mlab.points3d(*args**kwargs)

给定坐标绘制三维点图

points3d(x, y, z)
points3d(x, y, z, s, ...)

一般用以上两个函数格式,其中x,y,z是点的坐标可以是numpy数组或者lists。如果只给定坐标,画出来的点大小,颜色都相同。s数组大小与坐标相同,s的数值可以影响点的颜色和大小。

下面给出关键字参数:

Mayavi入门之mlab.points3d_第1张图片

 

 以官网的例子说明:

 1 import numpy as np
 2 from mayavi import mlab
 3 
 4 def test_points3d():
 5     t = np.linspace(0, 4 * np.pi, 20)
 6     x = np.sin(2 * t)
 7     y = np.cos(t)
 8     z = np.cos(2 * t)
 9     s = 2 + np.sin(t)
10     return mlab.points3d(x, y, z, s, colormap="copper", scale_factor=.25)
11 
12 test_points3d()
13 mlab.show()

运行结果为

Mayavi入门之mlab.points3d_第2张图片

 

 可以看到,每个点的颜色和大小都是因为s的影响,去掉s,得到默认的白色,和同样尺寸的小球。

Mayavi入门之mlab.points3d_第3张图片

scale_factor=.25,是控制球大小的参数,调整到0.5.

 Mayavi入门之mlab.points3d_第4张图片

 

如果想用s控制点的颜色,而不改变球的大小,添加参数scale_mode

mlab.points3d(x, y, z, s, scale_mode="none", colormap="copper", scale_factor=.5)

Mayavi入门之mlab.points3d_第5张图片

 

 colormap选项如下,可以随意调整

Mayavi入门之mlab.points3d_第6张图片

比如:colormap="spectral",会得到比较好看的图形。

Mayavi入门之mlab.points3d_第7张图片

 

 默认是用“sphere”显示点,也可以调整参数mode改成其他的形状,比如mode=“cube”

Mayavi入门之mlab.points3d_第8张图片

 

 

 其他的参数读者自行测试。

 

你可能感兴趣的:(Mayavi入门之mlab.points3d)