一. 前言

经过了一个多月的努力,软件系统又添加了不少新功能。这些功能包括非常实用的数据导入导出,对触摸进行优化的画布和画笔工具,以及对一些智能分析的报告生成模块等。进一步加强了平台系统级的功能。

马上要进入研三了,这套系统和我本人一样,前途未卜。一方面,实验室要求重新以JAVA开发一套数据挖掘框架而放弃当前的.NET版本,我的思路是两边一起发展,优势互补,可惜后继无人。另一方面,马上毕业的我,未来做不做数据挖掘工作都是两说,在多方面的压力下,开发软件目前近似于奢侈的选择。但是,就算是为了自己心里的那个“爽”字,少打一会游戏,做这个事情还是值得的。

下一步,我会做一个针对实习和招聘的微博数据分析工具,整合分析所有相关信息,为我近几个月的找工作事业提供帮助。看看能不能做到WEB端。

革命尚未成功,同志仍需努力!

我的插件式桌面软件框架类库(一)XFrmWork简介

ITTC数据挖掘平台介绍(综述)——平台简介

ITTC数据挖掘平台介绍(二) 微博数据挖掘和分析

ITTC数据挖掘平台介绍(三) 微博社团和传播分析

ITTC数据挖掘平台介绍(四) 框架改进和新功能

ITTC数据挖掘平台介绍(五) 数据导入导出向导和报告生成

ITTC数据挖掘系统(六)批量任务,数据查看器和自由文档

ITTC数据挖掘平台介绍(七)强化的数据库,虚拟化,脚本编辑器

二.数据导入和导出

对于一般用户而言,数据通常都不保存在数据库,而是文件的形式,常用的txt, Excel或者XML都是可用的选择。同样,用户也需要随时将分析的结果,采集到的数据导出到文件中。因此,数据导入导出必不可少。

考虑需要用户选择的参数,在导入方面,需要知道数据的类型(微博,微博用户,还是新闻等),数据格式(JSON,XML还是EXCEL),还要知道导入哪些字段; 在导出方面,要知道导出的数据源名称,数据格式和导出的位置。因此,我们选择了向导作为导入导出的基本设置UI。

在数据管理器中,点击“数据导入导出”按钮。

骚气的海绵宝宝。

可选择导入还是导出。

因为要对数据进行反序列化操作,因此必须知道导入的数据类型。所有在系统中实现了IComputable基类接口的数据,在此都能被选择。

选择文件类型格式,目前支持了以上五种常用格式,但未能直接支持EXCEL. 所谓CompressJson,是Json数据通过ZIP压缩获取的数据。

选取导入/导出的字段,这是整个系统的精髓,首先不是所有字段都能导出,比如List列表,而且也不是所有字段都需要导出。因此用户可通过多选选择字段。

所有向导完成后,即可将数据以所需的格式导出到文件之中,方便进一步的分析。

当然,缺点在于,所有数据的表头字段必须和系统内定义的属性名称一致。例如,Name必须是Name, 这也是无可奈何的事情,难不成用户还需要设置像ORM一样的映射关系?这一点,还是需要我们从SPSS和EXCEL这些系统中学习。

三. 触摸优化

大规模可视化画布,在大型触摸屏的效果可谓可圈可点。这非常便于客户展示和交互。因此,我对触摸功能做了大幅度的增强,用户可方便的通过单指拖拽,双指放缩/旋转,以及在画布上手写注释等功能。

为了提升操作体验,还加入了个惯性效果,移动,旋转和放缩都有一定的惯性。操作更为流畅。

笔触方面,可以选择不同大小的笔触,可实现压力感应(根据硬件有关),选择不同的画笔颜色,如下图所示。

经过优化后,系统在大型触摸板上的体验效果非常好。但不可避免的是,在点数量较多(超过1000以上),动态惯性效果就有明显的卡顿。

四. 报告生成系统

绝大多数应用场合,用户直接面对的不是软件,而是生成的报告和文档。因此在这一次迭代更新上,开发了报告生成系统,利用开源的DocX组件,可以非常方便的生成Word文档,可被EXCEL 2007和2010版本打开。

使用起来也非常简单,以“微博传播分析”为例,勾选“生成Word文档”选项,即可生成文档。

生成的报告如下图所示:

当然,缺点也很明显, DocX对Chart的控制能力并不好,样式和颜色等都不能很好的设定。只能满足基本的功能,但用户还是可以在图表中点击右键自行修改,远比简单的贴图好得多。

另外,文档生成速度也很快,几十页的图文并茂的文档,包括表格和图片,也仅仅需要一两秒钟,性能优异。

五. 总结

千里之行始于足下,任何功能都是人一个一个写出来的。这些功能都是算法和数据无关的,可重用能力很强,各类数据可以无缝的使用这些新功能。

未来将加入更多有用的新功能,打造不需要写代码的简单易用的数据分析和挖掘引擎!

最新文章

  1. 在View and Data API中更改指定元素的颜色
  2. HTML5视频播放
  3. Android 代码混淆之部分类不混淆的技巧
  4. AC日记——产生数 codevs 1009 (弗洛伊德)(组合数学)
  5. 从源码角度深入理解Handler
  6. poj1410
  7. Linux新手笔记 sudo
  8. QT学习 之 三维饼图绘制
  9. [BZOJ 1054][HAOI 2008]移动玩具 状态压缩
  10. Java学习笔记23(Calendar类)
  11. GO开发[四]:golang函数
  12. 基于JDK1.8版本的hashmap源码笔记(二)
  13. 用virsh console vhosts 卡住
  14. RedHat Linux7.3 使用yum安装时报错,改用CentOS yum源
  15. dedecms建的网站如何去掉/index.html
  16. Spring4.3整合Hibernate4.3搭建Spring MVC
  17. 转载---Atom编辑器常用快捷键
  18. poj3422
  19. 记一次线上Kafka消息堆积踩坑总结
  20. Django中contenttype的应用

热门文章

  1. .net点选验证码实现思路分享
  2. SQL Server表分区
  3. 使用 JavaScriptService 在.NET Core 里实现DES加密算法
  4. 多个Img标签之间的间隙处理方法
  5. 【微框架】Maven +SpringBoot 集成 阿里大鱼 短信接口详解与Demo
  6. zookeeper源码分析之四服务端(单机)处理请求流程
  7. 从display:run-in;中学习新技能
  8. 基于NPOI的Excel数据导入
  9. php安装threads多线程扩展
  10. 如何让spring mvc web应用启动时就执行特定处理