【问题标题】:Altair and Panel: Save as button not showingAltair 和面板:另存为按钮未显示
【发布时间】:2021-10-14 12:04:59
【问题描述】:

我正在使用 Python 库 Altair 进行绘图并让用户保存为 SVG 文件。要导入数据和交互式配置,我想使用 Panel 库。它们集成得很好,但是当我将 Altair 图放在 Panel 元素中时,保存按钮丢失了。其他交互工作正常。 这似乎是一个普遍的问题,因为我在具有保存按钮的 Panel 元素内找不到 Altair 绘图的图像。但是,我找不到任何人解决这个特定问题,所以问题是有什么方法可以恢复按钮以便用户保存?

(我知道 altair_saver 用于以编程方式保存,但不幸的是我们不能允许依赖于我们的系统)

这是一个简单的 Altair 示例,带有和不带有 Panel。

这里是代码:

import pandas as pd
import altair as alt
alt.__version__

import panel as pn
pn.extension('vega')
pn.__version__

dictdata = {'variable': ['A', 'B', 'C', 'D'], 'value': [1, 3, 2, 4] }
df = pd.DataFrame.from_dict(dictdata)

chart = alt.Chart(df).mark_bar().encode(
   y = alt.Y('variable:N'),
   x = alt.X('value:Q'),
)
chart

pn.Row(chart)

【问题讨论】:

    标签: panel altair


    【解决方案1】:

    此“保存按钮”称为操作菜单,可在vega-embed 中使用actions 选项进行配置。

    Panel 的 vega 图表嵌入通过设置 {actions: false} 显式删除操作,如下所示:panel/models/vega.ts#L71。

    不幸的是,该软件包似乎没有提供任何配置方式。您可以尝试向 Panel 库提交功能请求。

    【讨论】:

    • 感谢您提供快速准确的答复 - 一如既往。我曾尝试在我的代码中将操作设置为 True,但 Panel 似乎覆盖了它。我将尝试将其作为功能请求提交给 Panel 项目。
    猜你喜欢
    • 1970-01-01
    • 2012-10-05
    • 1970-01-01
    • 1970-01-01
    • 2012-05-06
    • 1970-01-01
    • 2014-03-16
    • 2020-08-18
    • 1970-01-01
    相关资源
    最近更新 更多