在python/JS上绘制大型数据集的图形

在python/JS上绘制大型数据集的图形,python,matplotlib,graph,datashader,Python,Matplotlib,Graph,Datashader,我有一个mongo集合,有大约2000万个文档,每个文档都会从ObjectID(_id)和大约10个其他值中获得一个时间戳。在每个文档中都有一个标识符键,用于以后对它们进行分组,我有大约200个唯一标识符。对于给定的标识符,我将从标记有该标识符的每个文档中收集10个值+时间戳,然后以各种组合绘制它(例如:时间戳+值:1,3,4,5,6,用于图形) 到目前为止,我已经创建了一个flask应用程序,作为前端的backed和angularjs。我可以从angular发送标识符,并使用pymongo将其

我有一个mongo集合,有大约2000万个文档,每个文档都会从ObjectID(_id)和大约10个其他值中获得一个时间戳。在每个文档中都有一个标识符键,用于以后对它们进行分组,我有大约200个唯一标识符。对于给定的标识符,我将从标记有该标识符的每个文档中收集10个值+时间戳,然后以各种组合绘制它(例如:时间戳+值:1,3,4,5,6,用于图形)

到目前为止,我已经创建了一个flask应用程序,作为前端的backed和angularjs。我可以从angular发送标识符,并使用pymongo将其发送到numpy数组和matplotlib或python端的seaborne,我可以创建并提供静态临时png,以在前端显示

我想创建要缩放的交互式图形,我在客户端尝试了dygraph,在服务器端尝试了bokeh。这两种方法都没有成功,因为数据太大(一页累积约1 mil个数据点)。 我需要一个免费的应用程序/库,加载时间不超过3分钟。我需要让它尽可能简单(不使用保存的图像进行预渲染,如果可能,自动或不进行下采样)


下一步我可以尝试什么,对我的情况有用吗?

是的,datashader是一个很好的目标。也可以查看mpl的web后端(它运行自己的tornado服务器),但您可以在浏览器端捕获鼠标/按键事件,将它们发送回服务器,并根据需要重新渲染图形(这是webagg和笔记本后端的工作方式)。好的,我将查看mpl后端。有人有没有链接到任何解释datashader和angularjs或纯html集成的资源?是的,datashader在这里是一个很好的目标。也可以查看mpl的web后端(它运行自己的tornado服务器),但您可以在浏览器端捕获鼠标/按键事件,将它们发送回服务器,并根据需要重新渲染图形(这是webagg和笔记本后端的工作方式)。好的,我将查看mpl后端。有没有人链接到任何解释datashader和angularjs或普通html集成的资源?