首页/文章/ 详情

PyVista:基于Python的开源可视化工具包

1月前浏览714

PyVista 是可视化工具包 (VTK) 的帮助程序库,它采用不同的方法通过NumPy和直接数组访问与VTK连接。该软件包提供了一个 Pythonic、文档齐全的接口,公开了VTK强大的可视化后端,以促进空间参考数据集的快速原型设计、分析和可视化集成。

这个工具包对于科学研究绘图、可视化以及3D网格渲染、仿真结果后处理等提供非常不错的非常友好的支持,大家可以根据主页的文档快速上手。

另外,PyVista不仅仅是从Python控制台或IDE运行它。例如,您可以将PyVista打包到docker映像中,并使用EGL构建 VTK,以便在远程服务器上启用丰富的无头绘图。您还可以使用pyinstaller打包PyVista,以便在独立应用程序中使用。

PyVista是NumFOCUS的所属项目。下面是一些研究领域的应用案例。

地球科学领域

下载圣海伦斯山的表面高程图并绘制







from pyvista import examplesmesh = examples.download_st_helens()warped = mesh.warp_by_scalar('Elevation')surf = warped.extract_surface().triangulate()surf = surf.decimate_pro(0.75)# reduce the density of the mesh by 75%surf.plot(cmap='gist_earth')
 

有限元分析结果可视化

绘制试件缺口处的应力值




from pyvista import examplesmesh = examples.download_notch_stress()mesh.plot(scalars='Nodal Stress', component=0, cmap='turbo', cpos='xy')

绘制空间样条曲线

从NumPy点数组生成样条














import numpy as npimport pyvista
# Make the xyz pointstheta = np.linspace(-10* np.pi,10* np.pi,100)z = np.linspace(-2,2,100)r = z**2+1x = r * np.sin(theta)y = r * np.cos(theta)points = np.column_stack((x, y, z))
spline = pyvista.Spline(points,500).tube(radius=0.1)spline.plot(scalars='arc_length', show_scalar_bar=False)

其他一些案例场景,非常丰富,大家自行了解。

来源:CAE仿真空间

ACTRADIOSS静力学振动非线性拓扑优化MATLABpythonUM控制渲染
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2025-05-29
最近编辑:1月前
CAE仿真空间
硕士 |欢迎关注“CAE仿真空间”公众号
获赞 103粉丝 798文章 104课程 3
点赞
收藏
作者推荐
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈