Я хочу создать очень простой список <ul>
с d3 ограниченными данными.d3 шаблон ввода/вывода с массивом объектов
данные в массиве объектов в виде:
[0 => {title: "title one"}, 1=> {title: "title two"}]
Мой код до сих пор:
var titles = _.findWhere(scope.titles, {key: d.key}).values;
var li = d3.select('.overview-popup ul').selectAll('li')
.data(titles);
li.enter()
.append('li')
.text(function(n){ return n.title });
li.exit().remove();
В результате это не так, я бы предсказать, где Элементы li
получают cleaned
каждый раз, когда к нему подается новый массив данных. Он оставит некоторые узлы и обновит их в зависимости от количества узлов. Это из-за индекса?
Итак, из моего понимания, d3 соединяет новые данные с существующим массивом данных. Я все еще не уверен, как эта функция исправляет это. Я столкнулся с той же проблемой. Когда я использую ключевую функцию, на моем графике ничего не отображается, поэтому мне нужно лучше понять ключевую функцию, которую я предполагаю. Я использую такой массив: '[{date: 'some date ...', percent: '2.89'}]' даты согласованы между новыми массивами с определенным диапазоном и процентами неизвестны. Я бы очень хотел использовать индекс по умолчанию, потому что объекты в порядке, но когда я делаю это и вытаскиваю новые данные, точки графа не обновляют – nf071590