可视化,即将事物或者过程进行抽象,最终以图像或图像的形式进行展示。最早由美国国家科学基金会(NSF)提出
可视化可分为信息可视化与科学可视化。信息可视化即将抽象的信息与知识进行抽象并展示。科学可视化即将空间数据(工程或者测量的数据)进行可视化计算与展示的过程



包括面绘制法与体绘制法


使用箭头、方向、色轮等表示矢量的数据


下载**VTK numpy traits mayavi pyQt5(支持py3.8)**之后才能使用TVTK,下载完之后按照顺序安装
whl下载: https://www.lfd.uci.edu/~gohlke/pythonlibs/#vtk
分别下载对应python版本
安装前配置国内的镜像
pip install VTK
pip install numpy
pip install traits
pip install PyQt5
pip install mayavi
安装完之后即可使用
from tvtk.tools import tvtk_doc
tvtk_doc.main()
from tvtk.api import tvtk
cube = tvtk.CubeSource(x_length=1.0, y_length=2.0, z_length=3.0)
print(cube)
vtkCubeSource (0000028C84E2DD70)
Debug: Off
Modified Time: 1311820
Reference Count: 2
Registered Events:
Registered Observers:
vtkObserver (0000028C8BAC8C70)
Event: 33
EventName: ModifiedEvent
Command: 0000028C8CBE0F60
Priority: 0
Tag: 1
Executive: 0000028C8445DD00
ErrorCode: No error
Information: 0000028C8B99D6A0
AbortExecute: Off
Progress: 0
Progress Text: (None)
X Length: 1
Y Length: 2
Z Length: 3
Center: (0, 0, 0)
Output Points Precision: 0
m.SetInputConnection(c.GetOUtputPort()) # VTK用法
m.input_connection(c.output_port) # TVTK用法
基本的三维对象有:
每个三维对象有不同的属性,以Cube为例
s.x_length
s.y_length
s.z_length
s.center
s.output_points_precision # 立方体对象的精度
对这些属性可以进行操作
对三维数据进行展示时,由于计算机屏幕是二维的,因此要实现不同的映射
基本步骤:
from tvtk.api import tvtk
# 1, 创建数据源
cube = tvtk.CubeSource(x_length=1.0, y_length=2.0, z_length=3.0, center=(0, 0, 0))
# 2. 转为图像数据
data_mapper = tvtk.PolyDataMapper(input_connection=cube.output_port)
# 3 创建actor
actor = tvtk.Actor(mapper=data_mapper)
# 4 创建绘制对象
render = tvtk.Renderer(background=(0, 0, 0))
render.add_actor(actor)
# 5. 创建窗口
render_window = tvtk.RenderWindow(size=(600, 600))
render_window.add_renderer(render)
# 6.创建交互
window_interactor = tvtk.RenderWindowInteractor(render_window=render_window)
# 7.开启
window_interactor.initialize()
window_interactor.start()
