热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

散景-获取有关已选择点的信息

如何解决《散景-获取有关已选择点的信息》经验,为你挑选了1个好方法。

我有几个要点绘制成散点图并显示在Web浏览器窗口中(使用Bokeh)。

对于选择,我使用PolySelectTool或BoxSelectTool。

我想做两件事:1)获取有关已选择点的信息,以便计算一些其他信息。2)由于点代表URL,所以我希望图表在每次单击一个点(代表URL)时打开一个新的浏览器选项卡并加载特定的URL。

我认为代码并不重要。但是为了使我的问题更完整,这里是...

Y = my_data
urls = get_urls(my_data)

TOOLS="pan,wheel_zoom,reset,hover,poly_select,box_select"
p = figure(title = "My chart", tools=TOOLS)
p.xaxis.axis_label = 'X'
p.yaxis.axis_label = 'Y'

source = ColumnDataSource(
    data=dict(
        xvals=list(Y[:,0]),
        yvals=list(Y[:,1]),
        url=urls
    )
)
p.scatter("xvals", "yvals",source=source,fill_alpha=0.2, size=5)
hover = p.select(dict(type=HoverTool))
hover.snap_to_data = False
hover.tooltips = OrderedDict([
    ("(x,y)", "($x, $y)"),
    ("url", "@url"),
])

select_tool = p.select(dict(type=BoxSelectTool))

# 
# I guess perhaps something should be done with select_tool
#

show(p)

elyase.. 5

您可以通过该source.selected属性获取信息,如果您想在每次更改时都收到通知,则必须创建一个回调,如下所示:

def callback(obj, attr, old, new):
    ...

source.on_change('selected', callback)

有关更多详细信息,请参见此示例。



1> elyase..:

您可以通过该source.selected属性获取信息,如果您想在每次更改时都收到通知,则必须创建一个回调,如下所示:

def callback(obj, attr, old, new):
    ...

source.on_change('selected', callback)

有关更多详细信息,请参见此示例。


推荐阅读
author-avatar
手机用户2502931993
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有