【问题标题】:Adding variable names to lists将变量名称添加到列表
【发布时间】:2017-09-14 09:29:50
【问题描述】:

所以,我正在动态创建散景图,需要创建一个像这样的元组

('Matbock', [Matbockl, Matbockc]) 

列表部分中的项目需要是变量名(无引号) 我目前能够将元组创建为所有字符串 ('Matbock', ['Matbockl', 'Matbockc']) 但这在 Bokeh 图例代码中不起作用。我正在为图表动态创建元素,我需要在元组的图例列表中引用这些线条和圆圈(Matbockl 和 Matbockc),而我对于如何做到这一点有点僵局。

基本上,它的 Bokeh 部分并不重要,我所追求的只是创建具有变量名而不是字符串的元组的能力。然后将它们修改为元组列表,以在 Bokeh 的图例声明中使用。

[('Matbock', [Matbockl, Matbockc]), ('Atlas', [Atlasl, Atlasc])]

任何帮助将不胜感激。


为了进一步澄清或简化问题,“Matbockl”和“Matbockc”的实例化不是问题。我已经将它作为字典引用和动态变量(是的,我知道,但我试图弄清楚如何让名称通过),问题总是回到如何将信息传递到散景图例中。

归根结底,我正在尝试将我的图表项传递到此...

legend = Legend(items=[
    ("iLitter",   [ll1, lc1]),
    ("Zagnut the destroyer",   [ll1, lc1]),
    ("Woot",   [ll1, lc1])
], location=(5, -40))

我正在尝试构建您在上面看到的“项目”列表。我不知道如何构建上面显示的项目列表。我尝试过的任何事情都不会让我得到这个精确的结构。最常见的是我的变量引用“Il1”周围有引号,这会导致图表失败。

【问题讨论】:

  • 对不起,我不明白你的问题。你想要元组中MatbocklMatbockc 指向的对象吗?您是否尝试动态获取表示变量名称的字符串?有关您使用 Bokeh 做什么的更多信息可能会帮助其他人知道如何提供帮助。
  • 对不起,如果我不清楚......在散景图的传说中,它需要一个列表。我正在构建该列表以及各个图表对象。最终列表的形式必须为 items = [('Matbock', [Matbockl, Matbockc]), ('Atlas', [Atlasl, Atlasc])] 所以我正在创建元组列表来完成此任务,但是正如我所做的那样,变量引用被作为字符串插入,如下所示.. ('Matbock', ['Matbockl', 'Matbockc']) 我只是想让元组中的两项成为变量(不引号)而不是字符串。希望对您有所帮助
  • 请使用您的代码 (MCVE) 的小 sn-p 更新您的问题,该代码显示了 MatbocklMatbockc 变量的初始化以及将它们传递给 Bokeh 的位置。除非变量是包含其字符串标识符的字符串,否则我想不出变量被其标识符替换的方法。

标签: python bokeh


【解决方案1】:

因此,如果我理解您正在尝试制作一个列表并使用函数动态地用元组填充它的问题。

这是一个例子

a = 'name'
b = ['my', 'list']
tuple([a,tuple(b)])
>>> ('name', ('my', 'list'))

或者如果您特别想要元组中的列表

tuple([a, b])
>>> ('name', ['my', 'list'])

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-04-28
    • 1970-01-01
    • 2016-06-24
    • 2013-09-11
    • 2013-01-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多