用户数据有哪些好的统计可视化框架/库?

时间:2011-03-02 20:47:22

标签: java scala statistics visualization

我们一直在我们的网站上收集用户数据,现在我们想以可访问的方式呈现数据。

我们有一个充满数据的数据库,我们只是在寻找一个框架,我们可以将所有数据转储到其中并能够将其可视化。

一些要求:

  • 必须能够排序&按多维过滤(例如:按用户,按操作类型,按日期,按元数据)
  • 必须能够将数据视图导出到csv / xml文件
  • 必须通过网络界面(无桌面应用程序)展示
  • 应该可以与Scala,Java,Python或Ruby一起使用

我们已经考虑过使用Vaadin,我们享受着我们可以拥有的控制量,但我想探索其他潜在的解决方案。

对于可能有助于我们显示统计信息的框架是否有任何建议?

3 个答案:

答案 0 :(得分:4)

我很高兴使用google visualisations和google提供的java库。我甚至为它编写了一个适配器 - 在Scala中 - 与LucidDb一起使用,因为默认情况下提供的数据库适配器仅用于MySQL。

特别是动态图表非常漂亮。

<强>更新

Lucid是处理大量数据的好方法,可以使用超过1Tb的大小。它是面向列的(如vertica或SybaseIQ),因此只需选择几列就不会产生获取整行数据的I / O成本。

同样有用的是Lucid可以通过SQL查询并且有一个jdbc客户端驱动程序,再加上google可视化Java库,这是一个理想的匹配,库可以将大多数自己的查询格式转换为SQL,所以尽量减少它在查询后必须进行的处理量。

我在Scalate框架内运行它,构建所有javascript以动态显示图表。通过这种方式,我可以根据页面中的其他控件轻松更改查询参数,并将新数据推送到图表中,而无需重新加载页面。根据您网站的重量级,Lift可能更适合您。

整个事情花了我一周的时间来设置,虽然我之前有使用谷歌图书馆的经验。

答案 1 :(得分:1)

我认为Pentaho BI应该符合您的需求。套件是用java实现的! pentaho数据集成(kettle)应该能够处理所有数据格式(sql-db,xml,csv,txt等等)。

还有Pentaho Community Edition (opensource and free)。值得一试!

答案 2 :(得分:1)

Infobright也是存储大量数据并将其用于分析的流行选择。它以列为导向,利用知识网格架构快速轻松地解决查询问题。它可以在开源和企业版本中使用。

Infobright在infobright.org网站上提供虚拟机以及Pentaho,Jaspersoft和BIRT。如果您想使用这些BI工具,我建议您从那里开始。