在D3中可视化连续数据流

4
我希望能实时在地球上展示事件。我有一些不断更新的数据(经纬度),我想将这些数据(经纬度的json)发送给我的d3脚本,并在地图上绘制这些点(带有过渡效果)。我知道如何使用d3绘制地图,但问题是我不确定如何在d3/HTML中创建一个端点,当该端点被访问时,就可以更新可视化内容。另外,每秒可能会有多个响应,我该如何同时处理多个请求。
我认为这个系统的架构对我来说变得太复杂了。任何建议都将非常有帮助。
2个回答

4
值得了解数据将如何被访问,以确定该怎么做。理想情况下,您希望在可视化中有一个单一的真相来源,以避免重绘时出现问题,并使您更容易思考问题。
如果是API,您可以定期进行ajax轮询,或者如果您的浏览器支持,则可以尝试WebSockets。这里有另一个SO讨论,用于实时更新。
至于实际的d3实现:因为您已经可以绘制地图(和点),所以您可以使用可重用图表模式来编写图表函数,每次调用函数时更新数据。 D3的通用更新模式应保持您的点与传递进来的任何数据同步。您甚至可以添加过渡效果使其更加美观!

0

Websockets可以是一个解决方案,您可以在其中监听事件,当事件发生时,可以有一个回调函数来呈现d3。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接