#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 хорошим способом сделать это?