【问题标题】:How to make drill down tables in Zeppelin?如何在 Zeppelin 中制作向下钻取表?
【发布时间】:2017-01-11 20:46:28
【问题描述】:

我正在尝试将表的一列中的每个值设为可点击,以便我可以使用 Zeppelin Table 开发向下钻取功能。但是下面的示例代码根本不起作用。

print(s"""%table
a\tb\n%html <button>x</button>1\t2\n%html <button>y</button>3\t4
""")

【问题讨论】:

  • 我使用的是 Zeppelin 0.6.1
  • 能否分享包括段落和解释器绑定在内的屏幕截图?
  • 我使用的是 Apache Spark,除了 Angular 没有其他绑定。我的实际代码非常复杂,我创建了此代码以便于测试。您可以复制粘贴此代码。如果您删除 %html,它会起作用,但按钮会以文本形式出现。

标签: apache-zeppelin


【解决方案1】:

完成这项工作需要相当多的努力。

基本思想是将数据源(例如 Spark DataFrame)转换为完整且自包含的 HTML 部分,并由 Zeppelin 解释。隐藏和显示需要由 javascript 库处理。

Zeppelin 使用 Bootstrap,所以我们直接使用 bootstrap 库。这个 SO 可能会帮助Bootstrap cllapse。也许需要更多样式。

如果您只是想深入了解功能而不是严格使用表格。如果您使用的是 Spark,使用 spark-highcharts 实现 Highcharts column drill down 之类的功能可能会更容易

【讨论】:

  • 感谢 Rockie,我从早上开始就在探索 spark-highcharts,但不幸的是,我需要表格数据的功能。
  • 最接近的highcharts是热图highcharts.com/demo/heatmap
  • 嗨,Rockie,我只需要单击表格行并根据表格第一列中的数据在下一段中显示另一个表格。
  • 感谢热图链接。我需要这个用于另一个用例:)
【解决方案2】:

我的代码终于成功了。问题似乎是如果您在第一列中有 html 标记,它将不起作用。但是,它适用于所有其他列。只需在前面再添加一个 cols 就可以了。

print(s"""%table
 dummy\ta\tb\np1\t%html <button>x</button>1\t2\np1\t%html <button>y</button>3\t4
""")

【讨论】:

  • Zeppelin 0.7.0 已修复此问题,第一列也可以使用html。
猜你喜欢
  • 2020-09-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-08-05
  • 2020-06-10
相关资源
最近更新 更多