3

我正在玩这个教程

https://github.com/apache/incubator-zeppelin/pull/27#issuecomment-90769401

似乎 val selectedTable的范围可以从 %%angular 解释器访问,但不能从 zeppelin 解释器访问。

例如,从 turorial 的第 2 段

{
val stat = sqlContext.sql("select count(*) as cnt, min(balance), cast(avg(balance) as INT), max(balance) from " + z.angular("selectedTable")).collect

val count = stat(0)(0)
val minBalance = stat(0)(1)
val maxBalance = stat(0)(2)
val avgBalance = stat(0)(3)

print(s"""%angular
<h2>Table {{selectedTable}}</h2>
<hr />
<div class="row">
    <div class="col-md-6"><center><h3>$count</h3>Total customers</center></div>
    <div class="col-md-6"><center><h3>$minBalance</h3>Minimum balance</center></div>
</div>
<br />
<div>
    <div class="col-md-6"><center><h3>$maxBalance</h3>Average balance</center></div>
    <div class="col-md-6"><center><h3>$avgBalance</h3>Maximum balance</center></div>
</div>
<br /><br /><br /><br /><br /><br /><br />

""")

}

当我使用 select 并将值从“bank”切换到“married”时,{{selectedTable}}(打印标题的%%angula 解释器)的值立即改变(除了第一次之外,没有点击播放按钮)但查询没有运行。换句话说,没有数据加载到图表中。

如果您在此 url https://youtu.be/QdjZyOkcG_w?t=15观看视频,您会看到每次选择具有不同的值时,所有查询都会一一执行。

有没有人有同样的问题?

先感谢您

4

1 回答 1

0

我遇到了同样的问题,对{{selectedTable}}的引用立即更新,但没有一个笔记本单元自动运行。我能够通过更改z.angularWatch()函数中的 z.run() 值来纠正这个问题。

z.run()刷新/运行引用的任何单元格的内容,因此 z.run(0) 运行第一个单元格,依此类推。应该更新默认的 z.run(2[3,4], selectedTableContext) 以匹配笔记本中的正确单元格。

于 2015-07-16T20:56:42.363 回答