2015-01-29 3 views
0

Как мы можем динамически назначать имена переменных для оси x и y в диаграмме рассеяния? Это один из примера, который я взял с этого сайтадинамическое обозначение оси в диаграмме рассеяния d3.js

D3.js x-axis time scale

Ось была названа дата и значение, которое происходит от номера строки 109 и 121 соответственно jsfiddle.

 .text("Date"); 
     .text("Value"); 

В случае использования различных наборов данных, как мы можем изменить эти значения динамически в соответствии с выбором пользователя. Я имею в виду, что я работаю над приложением, в котором пользователь выбирает обновления данных и рассеивания.

ответ

0

Что вы можете сделать, это предоставить идентификатор на текстовый элемент оси, например, так:

svg.append("g") 
    .attr("class", "y axis") 
    .call(yAxis) 
    .append("text") 
    .attr("class", "label") 
    .attr("transform", "rotate(-90)") 
    .attr("y", 6) 
    .attr("dy", ".71em") 
    .style("text-anchor", "end") 
    .attr("id","my-axis-name") 
    .text("Value"); 

Так как только вы измените набор данных с помощью кнопки, например, в вашей последовательности управления можно добавить:

function myCoolUpdateFunction() { 
    // Do stuff, e.g. 
    svg.selectAll('circle').style("fill","red"); 

    //change the text of the axis 
    svg.select('#my-axis-name').text("New Description") 
} 

Надеюсь, это поможет.

Смежные вопросы