javascript - 如何为 D3 子弹图内联数据

标签 javascript json d3.js

<分区>

在例子中的行

d3.json("bullets.json", function(data) {

它从本地文件中提取 json 数据并将其作为要执行的数据传递给回调。 我该如何更改它,以便我之前定义的 var 成为数据源,因为 js 中似乎没有方法来接受预先形成的数据对象?

原因?应用程序中的嵌入式 Web 查看器,它可以动态创建要呈现的 html,但无法访问本地文件系统。

编辑 那么让我更具体一点……如何将这个数据集输入到从数据生成子弹图的代码中(当它存储为外部文件时)? 它不能仅仅通过 d3.select( 等等,因为需要创建 sag 对象来将标题卡在上面

var dataset = {"title":"Sales","subtitle":"£, 000","ranges":[50,200,400],"measures":[100,500],"markers":[250]};

d3.json("bullets.json", function(data) {
 var svg = d3.select("body").selectAll("svg")
  .data(data)
  .enter().append("svg")

最佳答案

由于您不需要从外部源检索数据,您只需将保存数据的变量包含到您尝试绘制的元素的声明中,类似于下面的一堆矩形:

d3.selectAll('rect')
  .data([VariableHere]) //no need for [] if the variable already an array
  .enter()
  .append('rect')
  .... etc.

希望这对您有所帮助!

关于javascript - 如何为 D3 子弹图内联数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30976961/

相关文章:

javascript - 如何将包含 HTML 的字符串解析为 React 组件

javascript - React-Redux TypeScript 错误

javascript - 为 Canvas 游戏获得流畅的动画

php - 从 MySQL 结果和 PHP 为 D3.js 树创建分层 JSON?

javascript - 将 csv 解析为具有额外属性的对象

javascript - 进入-更新-退出模式后节点的 x 和 y 属性丢失

javascript - 原始页面上的 JS 错误是否会阻止 chrome 内容脚本运行?

javascript - 有没有办法 JSON.stringify 一个 HTML dom 对象? [JavaScript]

json - 只返回 $.ajax 传递的 JSON 数据的前 20 个结果?

javascript - 不寻常的 d3 放大可重用类 - this 和 bind