交互式仪表板(D3.js直流jscrossfilter python)在客户端sid上进行处理

2024-05-23 17:52:45 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一系列的事情我想去实现,还有一系列与之相关的挑战。我正在尝试创建一个非常简单(所以我认为)的仪表板,在这里我可以可视化具有以下形式的数据:

measurement_place | color | counts | measurement_time |

这可以在excel中可视化为堆栈柱形图,如下所示:

stack column chart

我有大约100个不同的“测量位置”值。我对这100个“测量地点”中的每一个进行每小时测量,这样在最后,每一个转储文件都有7天的每小时测量值。因此,以下是表格在同一测量时间内查找3个不同位置的示例:

^{pr2}$

颜色值可以有20种可能的颜色中的一种,不一定每次测量都出现。在条形图上显示数据的一个必要条件是每个给定颜色的计数必须大于等于5,如果计数小于5,则应将其分组在“其他颜色”下。在

当然,我可以将这些表作为CSV或JSON文件。在

我想实现的是生成一种仪表板,其中一方面我有一个带有堆栈列的图表,在那里我应该能够交互地选择一个子时段(例如,从整个星期到一些小时或几天),另一方面一些饼图,在客户端生成,用统计方法对这段时间进行了总结。在

我提到它必须在客户端处理,因为我没有任何基础设施来托管我的仪表板,但我需要它可以在线使用。为了做到这一点,我找到了https://www.smallvictori.es/,它的描述是“从Dropbox文件夹中获取文件并将其转换为网站。无CMS,无安装,无服务器,无需编码”。所以基本上,我尝试过(成功地)创建一个网页,把一个html文件和一些D3js脚本放在一起,生成一个单一的、非交互式的摘要饼图,一点也不复杂。在

我想知道是否可以做一些类似的事情来创建仪表板,使用“smallvictories”来托管渲染/生成用D3js DCjs和crossfilter创建的交互式仪表板所需的文件。我有使用Python的经验和javascript的基本知识,但从不介意弄脏我的手来学习完成我的项目所需要的东西。很高兴听到关于可能的限制,因为处理必须在客户端完成,我不知道CSV或JSON文件大小的建议限制是什么(我想每次创建仪表板时浏览器下载文件都超过100 mb并不是最佳选择)。也许D3js不是最好的选择?也许python和其他东西的结合更好地完成处理?在


Tags: 文件csv数据json客户端堆栈颜色可视化