d3js для построения векторных данных из файла json

#javascript #json #d3.js

Вопрос:

Я довольно новичок в файлах D3 и json, поэтому приношу извинения, если это несколько элементарный вопрос. У меня есть набор данных с четырьмя полями, организованными в столбцы, скажем:

 Name Time Value
X t1 v1
X t2 v2
X t3 v3
Y t1 V1
Y t2 V2
Z t1 V1
Z t2 V2
Z t3 V3
Z t4 V4
 

Как вы заметили, эти данные в основном представляют собой временные ряды V для разных имен, все в одном файле. Я хочу перенести это в файл json, который будет прочитан d3 и нанесен на график. Мне кажется, что наиболее эффективным способом было бы, если бы я мог каким-то образом организовать его таким образом, чтобы у меня были члены в файле json, чтобы

Вариант 1 —

 {name:'X',time:[t1 t2...],value:[V1 V2...]} for each name
 

Вариант 2 — Другой альтернативой было бы:

 {name:'X',time:'t1',value:'v1'},{name:'X',time:'t2',value:'v2'} and so on for each name 
 

Я знаю, что вариант 2 возможен, но он кажется немного неэффективным при многократном сохранении имени. Возможен ли вариант 1 для хранения в json и построения графика с использованием d3?

Кажется, я не могу найти никаких примеров для варианта 2 и того, как я мог бы построить такие данные.

Спасибо за вашу помощь!

Комментарии:

1. С d3 лучше всего иметь по одному объекту на элемент в визуализации — вы можете перенести этот принцип во вложенные/сгруппированные визуальные компоненты, я бы предложил такой формат, как : [{name: "X", values: [{time:'t1',values:'v1'}, {... }}, {name: "Y", values: [ {},{}...]} ] . С существующими вариантами 1 и 2 будет сложнее работать, чем необходимо для большинства типов визуализации, или они вызовут непредвиденные осложнения.

2. Спасибо! В файле json много дополнительного текста, что делает его более объемным, но преимущества, связанные с потоком, возможно, компенсируют это. Последующий вопрос — Если бы я использовал фрейм данных pandas для обработки этих данных в json, был бы df.to_json хорошим способом сделать это?