首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Paraview python脚本中设置颜色表范围?

如何在Paraview python脚本中设置颜色表范围?
EN

Stack Overflow用户
提问于 2016-06-01 22:35:32
回答 1查看 1.8K关注 0票数 1

我正在Paraview中可视化空间数据的时间序列,我想让我的设置脚本根据整个时间序列上的字段范围为给定字段设置颜色表,而不是单个快照。我尝试用脚本计算的值来初始化查找表,但是没有用。

下图显示了运行我的设置脚本的结果。Python Shell窗口中的值是比例应设置的值,但颜色栏显示另一个值。

我的设置脚本的相关部分在这里。

代码语言:javascript
运行
复制
# get the scales for the surface fields
mag_os_xdmf = FindSource('mag_os.xdmf')
with h5py.File(mag_os_xdmf.FileName.replace('xdmf', 'h5'), 'r') as h5:
    for comp in ('br', 'bt', 'bp'):
        scale = np.abs(h5[comp].value).max()
        print(comp, scale)
        ctab = [-scale, 0.23137254901960785, 0.2980392156862745, 0.7529411764705882,
                scale, 0.7058823529411765, 0.01568627450980392, 0.14901960784313725]
        DataRep = GetDisplayProperties(mag_os_xdmf)
        lut = GetLookupTableForArray(comp, 1, NanColor=[0.24705882352941178, 0.0, 0.0],
                                     RGBPoints = ctab, ColorSpace='Diverging' )
        DataRep.ColorArrayName = ('POINT_DATA', comp)
        DataRep.LookupTable = lut
Render()

为了便于比较,下面是我手动更改颜色栏时的python跟踪输出

代码语言:javascript
运行
复制
try: paraview.simple
except: from paraview.simple import *
paraview.simple._DisableFirstRenderCameraReset()

mag_os_xdmf = GetActiveSource()
DataRepresentation6 = GetDisplayProperties(mag_os_xdmf)
a1_br_PVLookupTable = GetLookupTableForArray( "br", 1, RGBPoints=[-0.122, 0.23, 0.299, 0.754, 0.122, 0.706, 0.016, 0.15] )

DataRepresentation6.ScalarOpacityFunction = []
DataRepresentation6.ColorArrayName = ('POINT_DATA', 'br')
DataRepresentation6.LookupTable = a1_br_PVLookupTable

Render()
EN

回答 1

Stack Overflow用户

发布于 2016-06-08 22:32:18

您应该能够执行以下操作:

代码语言:javascript
运行
复制
# get color transfer function/color map for 'br'
lut = GetColorTransferFunction('br')

# get opacity transfer function/opacity map for 'br'
opacityLut = GetOpacityTransferFunction('br')

# Rescale transfer function
lut.RescaleTransferFunction(-scale, scale)

# Rescale transfer function
opacityLut.RescaleTransferFunction(-scale, scale)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37571716

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档