Ironpython Spotfire Ironpy如何编辑特定可视化

Ironpython Spotfire Ironpy如何编辑特定可视化,ironpython,spotfire,Ironpython,Spotfire,在所有Spotfire IronPy教程中,可视化的定义如下: vc = detailsVis.As[VisualContent]() 我的问题是如何为特定的可视化定义对象?我能按标题写吗?我能用objectid做吗 基本上,我在一个选项卡上有多个可视化效果。我希望能够将脚本指向特定的可视化,以更改轴值和其他内容。最简单的方法是使用。这在联机帮助中非常详细,所以我不打算详细介绍 您还可以通过其标题或Id引用可视化(无需导入): Document.Pages是一个 Document.Pages.

在所有Spotfire IronPy教程中,可视化的定义如下:

vc = detailsVis.As[VisualContent]()
我的问题是如何为特定的可视化定义对象?我能按标题写吗?我能用objectid做吗


基本上,我在一个选项卡上有多个可视化效果。我希望能够将脚本指向特定的可视化,以更改轴值和其他内容。

最简单的方法是使用。这在联机帮助中非常详细,所以我不打算详细介绍

您还可以通过其标题或Id引用可视化(无需导入):

Document.Pages
是一个

Document.Pages.Visuals
是一个


不过,最好还是坚持使用参数:)

谢谢。因此,TryGetVisual(visual_id)是一个ironpy函数?它是VisualsCollection对象的一种方法,由Spotfire API实现,可由IronPython访问。您不需要导入任何内容,但无法在Spotfire之外运行此函数。请注意,通过id引用可视化是一个真正的硬编码功能。使用参数更灵活,并允许您更轻松地更改所引用的可视化。否则,您必须使用我上面提到的方法查找可视化的id,然后将其复制到脚本中。啊,谢谢。。是的,问题是我只使用一个属性/脚本来编辑某些可视化。。所以循环脚本很棒
# loop through all pages in analysis
for p in Document.Pages:
    print p.Title, p.Id

# loop through all visuals on a page
page_index = 3    # integer index of the page (left to right; starts at 0)
for v in Document.Pages[page_index].Visuals:
    print v.Title, v.Id

# try to find a specific visual on a page by title
for p in Document.Pages:
    for v in p.Visuals:
        if v.Title == "sometitle": visual_id = v.Id 

# or by Id, if you know it already
Document.Pages[1].Visuals.TryGetVisual(visual_id)