Я делаю линейный график NVD3, который значительно улучшит ясность, если я смогу отобразить маркеры для каждой точки данных, а не только для самой строки. К сожалению, я пока не смог найти простой способ сделать это с NVD3. Я также рассмотрел использование графика рассеяния, но я не мог понять, как показать соединительные линии между точками. Третий вариант, который я рассматривал, состоял в том, чтобы наложить график линии и рассеивания, но это будет показывать каждую серию дважды в легенде и может вызвать другие ненужные визуальные осложнения.
Есть ли способ элегантно снять это? Пример кода моего метода форматирования приведен ниже, но атрибуты 'size' и 'shape' в test_data не влияют на график линии с текущим кодом.
test_data = [ { key: 'series1',
values: [
{ x: 1, y: 2.33, size:5, shape:"circle" },
{ x: 2, y: 2.34, size:5, shape:"circle" },
{ x: 3, y: 2.03, size:5, shape:"circle" },
] } ];
nv.addGraph(function() {
var test_chart = nv.models.lineChart();
test_chart.xAxis.axisLabel('Sample Number');
test_chart.yAxis
.axisLabel('Voltage (V)')
.tickFormat(d3.format('.02f'));
d3.select('#test_plot')
.datum(test_data)
.transition().duration(500)
.call(test_chart);
nv.utils.windowResize(test_chart.update);
return test_chart;
});