0

我有几个网格,我使用 pyvista 读取每个网格

import pyvista as pv

# read the data
grid1 = pv.read('mesh1.vtk')
grid2 = pv.read('mesh2.vtk')

我想将它们绘制在具有不同颜色的同一个图上:

plotter = pv.Plotter(window_size=(1500, 1100))
plotter.add_mesh(grid1, color=[0.6, 0.2, 0.1])
plotter.add_mesh(grid2, color=[0.1, 0.6, 0.6])

我可以为每个网格添加标签吗?或添加图例?

4

1 回答 1

2

是的,这自然可以做到,而且您已经知道必须使用的关键字:labellegend

import pyvista as pv 
from pyvista import examples 
 
unstructured = examples.load_hexbeam() 
poly = examples.load_ant() 
poly.points /= 10 
poly.points += [0, 2, 3] 
 
plotter = pv.Plotter() 
plotter.add_mesh(unstructured, color=[0.6, 0.2, 0.1], label='beamy')
plotter.add_mesh(poly, color=[0.1, 0.6, 0.6], label='anty') 
 
plotter.add_legend() 
plotter.show()             

用一根梁和一只蚂蚁作图,它们的标签都在一个图例中

正如您所看到的,作为 turn 的label关键字参数传递的字符串add_mesh转换为图例中的标签,您可以通过add_legend()调用启用这些标签。有关图例的自定义选项,请参阅文档

于 2020-07-29T01:36:49.257 回答