javascript - D3 : Data join for population pyramid

标签 javascript d3.js

我有年份(5 年间隔)和年龄组(5 年间隔)的数据:

Year  Age   Value   
1970  0_5   5
1970  5_10  4
1970  10_15 2
[...] 
1975  0_5   4
1975  5_10  3 
1975  10_15 2
[...] 

当及时向后和向前移动时,我想计算该数据的数据连接,以便获得垂直移动。例如,1970 年代表年龄组 5_10 的矩形应该在 5 年后(一步)转变为 1975 年的 10_15 矩形。

解决这个问题的相当通用的方法是什么?

最佳答案

有一个very nice sample (我认为)这正是您正在寻找的。

两个基本思想是:

  • 仅用起始年份表示年龄间隔,以便您可以将它们用于算术
  • 计算每个间隔的“出生年份”,以便在同一出生年份的间隔之间发生转换。 (出生年份=年份-年龄)

即您可以像这样表示/转换您的数据:

Year  Age  Birthyear  Value   
1970  0    1970       5
1970  5    1965       4      <-- 5_10 in 1970
1970  10   1960       2
[...] 
1975  0    1975       4 
1975  5    1970       3
1975  10   1965       2      <-- 10_15 in 1975
[...] 

关于javascript - D3 : Data join for population pyramid,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16223815/

相关文章:

javascript - 如何重新创建中高亮功能?

javascript - 如何将值设置为javascript对象元素中的函数?

javascript - 如何制作单独的强制布局渲染循环?

javascript - SVG foreignObject 元素的 dagre-d3 IE 解决方法?

javascript - d3 : drawing multiple rectangles using areas

javascript - 为什么这段代码不返回 false?

javascript - 如何从浏览器中的变量运行全局常量函数

javascript - 如何使用本地存储为单个键创建多个值

javascript - 通过javascript/D3加载json

javascript - 如何根据文本宽度动态调整 SVG 矩形的大小?