【发布时间】:2011-06-13 23:45:12
【问题描述】:
对于 Protovis 新手来说,这是一个相当令人生畏的项目,但也许你可以帮我把它分成易于消化的部分?
我想要构建的是“交互式面积图”,如下所示:
首先是数据... 我在 Excel 中有省份的数据:
省 10 年 100 1000 10000 1970 年 2 4 6 3 1971 年 3 6 8 5 B 1970 6 9 12 6 乙 1971 4 8 11 8 ………… . . .对于每个省和年份,我希望能够绘制一张面积图:
vis.add(pv.Area)
.data(data.ProvinceA[1970])
.bottom(1)
.interpolate("basis")
.left(function(d) x(d.x))
.height(function(d) y(d.y))
.fillStyle("rgb(21,173,210)")
.anchor("top").add(pv.Line)
.lineWidth(3);
那我想添加2种交互方式:
- 省份选择
- 时间滑块
选择复选框和时间滑块共同决定了在任何给定时间哪些区域可见。 例如,如果选择省 A 且年份为 1984,则仅显示该区域。如果现在拖动时间滑块,则现在会显示省 A 的相应年份。如果选中另一个省,则区域会重叠,并且当时间滑块移动时会重新绘制两个区域。
Protovis 问题:
- 如何设置此应用程序的数据格式(省、年、x、y)?
- 如何实现复选框与区域的绑定?
- 如何实现时间滑块?在 Protovis 中还是像带有触发重新渲染图形的侦听器的外部组件一样?
【问题讨论】:
标签: javascript json visualization protovis