有没有办法在 Paraview 中自动加载 csv 文件?

问题描述

我正在使用 Paraview 显示存储在 csv 文件中的测井信息。

加载 csv 数据文件添加“表到点”过滤器后,我手动指定哪些列应用于 X 列Y 列 和 Z 列(例如我在“X 列”中使用了一个名为“Easting”的列)。

有没有办法让这一步自动化?也许某种配置文件可以输入 Paraview 以指示列映射?

解决方法

你可以使用 python 宏来做到这一点。 ParaView 中的宏是 Python 脚本,您可以从工具栏中触发。

您可以使用这个来创建和配置 TableToPoints 过滤器(根据您的列名使用 modif):

#### import the simple module from the paraview
from paraview.simple import *
#### disable automatic camera reset on 'Show'
paraview.simple._DisableFirstRenderCameraReset()

# create a new 'Table To Points'
tableToPoints1 = TableToPoints(registrationName='TableToPoints1')

# configure column names
tableToPoints1.XColumn = 'y1'
tableToPoints1.YColumn = 'y2'
tableToPoints1.ZColumn = 'y26'

# get active view
spreadSheetView1 = GetActiveViewOrCreate('SpreadSheetView')

# show data in view
tableToPoints1Display = Show(tableToPoints1,spreadSheetView1,'SpreadSheetRepresentation')

# hide data in view
Hide(sineWavescsv,spreadSheetView1)

# update the view to ensure updated data information
spreadSheetView1.Update()

将其存储在您的磁盘上并转到菜单 Macros / Import new macro

请注意,您可以使用 Python Trace 轻松创建自己的:

  1. 菜单Tools / Start Trace(带有默认选项)
  2. 执行您想稍后重播的操作(加载文件、创建过滤器、编辑颜色图等)
  3. Tools / Stop Trace。它会打开一个带有 Python 代码的编辑器,您可以将其另存为宏。
  4. 宏是工具栏中的一个新按钮。