Javascript d3。缺少数据。仅打印每组中的初始值

Javascript d3。缺少数据。仅打印每组中的初始值,javascript,d3.js,data-visualization,scatter-plot,Javascript,D3.js,Data Visualization,Scatter Plot,我是在这里生成的非常好的d3示例的基础上构建的 我仍处于探索阶段,弄清楚原始版本中的所有代码都做了什么,以及如何调整它以实现我的可视化目标 下面是当前版本的一个块。通过单击“在新窗口中打开”查看可视化效果最佳 对于d3来说,这是一个相对较新的过程,对于JavaScript来说,这无疑是一个相当陡峭的学习曲线。在任何情况下,我在小而简单的实践示例中遇到的问题是,并不是所有的数据都被绘制出来。你可以看到我只有3个数据点,而不是7个数据点。我不完全确定这里发生了什么 我做过一些后台疑难解答:原始代码

我是在这里生成的非常好的d3示例的基础上构建的

我仍处于探索阶段,弄清楚原始版本中的所有代码都做了什么,以及如何调整它以实现我的可视化目标

下面是当前版本的一个块。通过单击“在新窗口中打开”查看可视化效果最佳

对于d3来说,这是一个相对较新的过程,对于JavaScript来说,这无疑是一个相当陡峭的学习曲线。在任何情况下,我在小而简单的实践示例中遇到的问题是,并不是所有的数据都被绘制出来。你可以看到我只有3个数据点,而不是7个数据点。我不完全确定这里发生了什么

我做过一些后台疑难解答:原始代码使用了版本2.7中的d3/d3.js脚本,而不是我在这里使用的(“”)。此外,他们还使用了另一个脚本d3/d3.csv.js,我假设是读取.csv文件。我省略了这个脚本,只是在d3.js中使用了d3.csv()

如果我在代码中保留这两个原始脚本,我的可视化绘图会正确(7个数据点),但是如果我用当前版本替换原始的d3.js(v.2.7),我只会得到三个数据点的绘图

知道这是怎么回事吗?关于如何修改我发布的代码以便绘制所有数据点的想法

谢谢你的帮助


Nate

在第55行,这里有
.data(rawData,函数(d){returnd.site;}),

尝试更改为
.data(rawData),

.data中的第二个参数是键。当您尝试创建圆svg元素时,它会查看键,该键只有三个不同的值(d.site中的site 1、site 2和site 3),因此只创建三个圆


关于数据选择方法的参考是完美的!当然,这是有道理的,但我没有意识到这是一把钥匙。非常感谢!