Как сделать сложенный бар / область в d3

Я хотел бы создать столбчатую диаграмму с накоплением (или диаграмму с накоплением с областями) для мужчин и женщин с течением времени. Бар (или область) мужчины находится внизу, а сверху будет женщина. Данные довольно простые. Он имеет формат, как показано ниже в CSV:

gender  year    value
male    1999    2845
male    2004    2904
male    2009    3004
male    2014    3056
female  1999    2910
female  2004    3210
female  2009    3340
female  2014    4029

Прочитал по d3.csv, сделал гнездо по годам и проделал некоторые манипуляции, чтобы подогнать его под формат для d3.stack (). Таким образом, окончательный формат данных выглядит так:

Object { male: 2845, female: 2910 }
Object { male: 2904, female: 3210 }
Object { male: 3004, female: 3340 }
Object { male: 3056, female: 4029 }

Я пробовал использовать d3.stack с данными выше, но, похоже, это не сработало. Я начал сомневаться, подходит ли этот формат для d3.stack () и есть ли более эффективные способы сделать столбчатую диаграмму / диаграмму с областями, чем этот. Мне было интересно, может ли группировка данных по полу (больше, чем по году) иметь больше смысла для использования d3.stack ().

Если у кого-нибудь есть какие-либо советы по созданию штабелированного бара / зоны, мы будем очень признательны.

Спасибо,

github.com/d3/d3-shape#stacks - правильный формат для того, чего вы пытаетесь достичь. Что «похоже, не работает»? вы можете привести пример?
Tom Shanley 05.11.2018 01:38

Я имел в виду, что результат d3.stack () был пуст. Я не был уверен, что это привело к пустому результату, потому что входные данные, например {male: 2845, female: 2910} не соответствует формату, который d3.stack () требует в качестве входных данных.

Brian 05.11.2018 09:54

Спасибо за ссылку. Это решено. Проблема была не во входной структуре. Это потому, что я плохо использовал d3.stack (). Когда я следил за документом по вашей ссылке, он работал нормально.

Brian 06.11.2018 20:43
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
3
45
0

Другие вопросы по теме