ВТК в Matplotlib с использованием Numpy
Я хочу извлечь некоторые данные (например, скаляры) изВТК файл вместе с их координатами на сетке, а затем обработать его вMatplotlib, Проблема в том, что я не знаю, как получить данные о точках / ячейках из файла VTK (например, указав имя скаляра) и загрузить их вNumPy использование массиваvtk_to_numpy
Мой код должен выглядеть так:
import matplotlib.pyplot as plt
from scipy.interpolate import griddata
import numpy as np
from vtk import *
from vtk.util.numpy_support import vtk_to_numpy
# load input data
reader = vtk.vtkXMLUnstructuredGridReader()
reader.SetFileName("my_input_data.vtk")
reader.Update()
(...missing steps)
# VTK to Numpy
my_numpy_array = vtk_to_numpy(...arguments ?)
#Numpy to Matplotlib (after converting my_numpy_array to x,y and z)
CS = plt.contour(x,y,z,NbLevels)
...
PS: я знаю этоParaView может выполнить задачу, но я пытаюсь опубликовать некоторые данные без необходимости открывать Paraview. Любая помощь приветствуется
Редактировать 1
я нашел этоучебник PDF быть очень полезным для изучения основ обработки файлов VTK