Javascript 在D3中调用数组和数据

Javascript 在D3中调用数组和数据,javascript,arrays,d3.js,Javascript,Arrays,D3.js,我已经在D3中编码了一段时间了,但是有些地方仍然让我感到困惑。我在csv文件中有一些数据。我用下面的方式来称呼它 var dataset; d3.tsv("ST_03_data.tsv", function(data) { dataset=data; 然后我做了一大堆的事情,比如画一张图表或者其他什么,一切都很好。我想以某种方式使用一些(但不是全部)数据列,所以我想做的是将它们设置为变量。因此,我所做的,直接在上面的代码下面是写 var newvar = (d.d

我已经在D3中编码了一段时间了,但是有些地方仍然让我感到困惑。我在csv文件中有一些数据。我用下面的方式来称呼它

var dataset;     
d3.tsv("ST_03_data.tsv", function(data) {       
dataset=data;   
然后我做了一大堆的事情,比如画一张图表或者其他什么,一切都很好。我想以某种方式使用一些(但不是全部)数据列,所以我想做的是将它们设置为变量。因此,我所做的,直接在上面的代码下面是写

var newvar = (d.data1, d.data3, d.data5)
其中,data1、data3和data5是数据列。获取错误消息“找不到变量d”。如果使用(data1,data3,data5)代替(也就是说,删除d),我会得到一条等价的消息

那怎么了?我需要构建一个函数吗?我已经尝试过了,但也没有成功,但我可以看到它可能会更好。谢谢你的帮助。谢谢


这里有一个完整的例子——它看起来很有效,而且在一定程度上确实有效,但我想让它变得更简单。目前,有两次单击,单击它们将传递新数据。它使用我在每次单击中设置的变量来实现,实际上是在矩形的属性中。我想做的是将这个变量(现在称为barup)移到代码的顶部,这样我就不需要重复它了

不知道你想在这里做什么。您只在代码中定义了
数据集
数据
,那么
d
data1
等从何而来?它们是tsv文件中列的名称。至于我想做什么,这是一个很好的问题。最后,我在代码后面有一个单击处理程序,当您单击它时,数据集中的不同列将被选中以绘制一个折线图。但是我不需要每一列,只需要其中的一部分。那么你需要做
dataset.data1
或类似的操作来访问这些列。啊,好的,谢谢,v有用的(编辑)我现在已经尝试过了,如果我放了,比如console.log(dataset[1]),它将返回数据集的第二行。但是如果我放置console.log(dataset.1),它不会返回任何东西——它说它是未定义的。如何获取列而不是行?