将d3.js与Apache Zeppelin一起使用

时间:2016-04-04 23:12:11

标签: javascript d3.js apache-zeppelin

我试图通过将其与d3.js集成来为Apache Zeppelin添加更多可视化选项

我找到了一个例子,其中有人用leaflet.js here做了它,并试图做类似的事情 - 不幸的是我不太熟悉angularJS(Zeppelin用来解释前端语言的东西) 。我也没有流数据。下面是我的代码,只使用d3.js的简单教程示例

%angular
<div>
    <svg class="chart"></svg>
</div>
<script>
function useD3() {
    var data = [4, 8, 15, 16, 23, 42];

    var width = 420,
        barHeight = 20;

    var x = d3.scale.linear()
        .domain([0, d3.max(data)])
        .range([0, width]);

    var chart = d3.select(".chart")
        .attr("width", width)
        .attr("height", barHeight * data.length);

    var bar = chart.selectAll("g")
        .data(data)
      .enter().append("g")
        .attr("transform", function(d, i) { return "translate(0," + i * barHeight + ")"; });

    bar.append("rect")
        .attr("width", x)
        .attr("height", barHeight - 1);
}

if (window.d3) {
    useD3();
} else {
    var sc = document.createElement('script');
    sc.type = 'text/javascript';
    sc.src = 'https://cdnjs.cloudflare.com/ajax/libs/d3/3.5.16/d3.min.js';
    sc.onload = useD3;
    sc.onerror = function(err) { alert(err); }
    document.getElementsByTagName('head')[0].appendChild(sc);
}
</script>

然而,在Zeppelin中,它完成了没有错误的运行,而我得到的只是一个空白div。任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:1)

enter image description here enter image description here

Zeppelin版本是0.7.0。该示例适用于此版本。您还可以使用 html 显示系统。结果在图片上。

相关问题