当前位置: 代码迷 >> JavaScript >> d3.csv操作数据切换列显示
  详细解决方案

d3.csv操作数据切换列显示

热度:47   发布时间:2023-06-03 18:09:35.0

从cvs.file读取数据

    "col1","col2"
    "row1col1","row1col2"

我想在强制布局中切换列数据以选择列2或列1,但要动态选择。

    node = nodeG.selectAll(".node")
            .data(data, function(d) {return d.column1;});//first option

    node = nodeG.selectAll(".node")
            .data(data, function(d) {return d.column2;});//second option

我尝试使用一个变量,由于某种原因它不起作用

    var data_variable = function(d) {return d.column1;}
                        || function(d) {return d.column2;} 
                        // pseudocode, data from input options

    node = nodeG.selectAll(".node")
            .data(data, data_variable);

这是正确的方法还是在显示之前更好地处理了数据?

最终成为主要功能内部的一个简单解决方案:

var ls = d3.select("#selector").property("value");

if (ls === 'it' ){

  idValue = function(d) {
  return d.col1;
  };

  textValue = function(d) {
  return d.col1;
  };

 } else {

  idValue = function(d) {
  return d.col2;
  };

  textValue = function(d) {
  return d.col2;
  };

 };

我只是从下拉列表中获取值,然后有条件地选择了返回的函数

  相关解决方案