fc_matplotlib4mesh包使用matplotlib在简单网格上显示简单网格或数据
fc-matplotlib4mesh的Python项目详细描述
python包fc_matplotlib4mesh允许使用matplotlib(>;=2.0.0)在simplicial网格上显示simplicial网格或数据。 简单网格必须由两个数组给出:顶点数组和连接数组。
简介:
简单网格可以是:
- a triangular mesh in dimension 2, made with 2-simplices (ie. triangles),
- a tetrahedral mesh in dimension 3, made with 3-simplices (ie. tetrahedron),
- a triangular mesh in dimension 3 (surface mesh), made with 2-simplices,
- a line mesh in dimension 2 or 3 made with 1-simplices (ie. lines).
简单网格由其顶点数组q和连接数组me给出。 为了便于演示,本文给出了一些简单的网格。它们可以装载 通过使用函数getMesh2D、getMesh3D或getMesh3Ds 在fc_meshtools包中。
文档可在fc-matplotlib4mesh专用网页上找到。
安装:
python包索引中提供了fc_matplotlib4meshpython包,因此要安装/升级,只需键入
pip install fc_matplotlib4mesh -U
此后,可以运行其中一个演示功能
importfc_matplotlib4meshfc_matplotlib4mesh.demos.plot3D()
importfc_matplotlib4meshfc_matplotlib4mesh.demos.plot2D()
示例:
有一个完整的源代码用于表示球体上的函数
importmatplotlib.pyplotaspltfromfc_tools.Matplotlibimportset_axes_equalimportfc_matplotlib4meshasplt4simfromfc_matplotlib4mesh.demosimportgetMesh3Dsimportnumpyasnpq2,me2=getMesh3Ds(2)q1,me1=getMesh3Ds(1)f=lambdax,y,z:np.cos(3*x-1)*np.sin(2*y-2)*np.sin(3*z)u2=f(q2[0],q2[1],q2[2])u1=f(q1[0],q1[1],q1[2])plt.ion()plt.figure(1)pp=plt4sim.plot(q2,me2,u2)plt4sim.plotmesh(q1,me1,color='Black',linewidths=2)plt.colorbar(pp)plt.axis('off')set_axes_equal()plt.figure(2)pp=plt4sim.plot(q1,me1,u1,linewidths=2,vmin=min(u2),vmax=max(u2))plt4sim.plotmesh(q2,me2,color='LightGray',alpha=0.1)plt.colorbar(pp)plt.axis('off')set_axes_equal()