ITTC数据挖掘系统(六)批量任务,数据查看器和自由文档
这一次带来了一系列新特新,同时我们将会从商业智能的角度讨论软件的需求
一. 批量任务向导
一个常用的需求是完成处理多个任务,可能是同一个需求以不同的参数完成多次,这类似批量分析某一问题;或者是不同的需求顺次完成,比如系统功能级测试。因此非常有必要加入该功能。由于系统有对“任务”级功能的支持,所以添加该功能很容易,加入一个任务队列,当上一任务完成时自动配置和启动下一任务即可。
我们以批量执行同一任务为例,看下下面的操作。点击“任务”菜单的“启动批量任务”向导,即可实现如下配置:选择要批量执行的任务:

选取要修改的参数,

我们此处选择“ScaleSize”参数。以一行一个参数的形式填写下面的表格:

点击完成之后,系统会自动按照不同的ScaleSize参数,完成循环,并输出所需结果。
至于对于顺次执行多个任务的需求,目前可以从外部加载任务配置单,并可按任务配置顺次执行,该任务配置保存了详细的任务参数和模块名称,以XML格式存储。
二.加强的数据浏览器
系统原先内置的数据浏览器是ListView表格控件,目前使用了功能更强大的DataGrid,效果如图:

通过延迟加载和动态绑定的特性,该控件可以获得相当好的性能,同时可以方便的对数据列做排序,分组等操作:

同时,该控件还可以方便的修改数据属性,包括字符串,时间和数字等。并将修改保存到数据库中。
三. 插件式的界面替换
对WPF程序来说,换肤是一件很普通的功能,但如果完全替换成另外一个View,还是需要一定的技巧的。由于本系统在设计时,没有充分考虑到标准MVVM的需求,而采用了插件式的Model管理View的方式(可c参考我的MVVM 开发的几种模式讨论(WPF))。这导致了动态替换View变得更为困难。
经过了长久的考虑,我决定不对框架做伤筋动骨的改变,对View也采用插件的方式,通过一个新加插件接口 ICustomView,系统在加载包含View的插件时,会在插件集合中查找实现该接口,且与原插件名字一致的界面控件,并将原插件的界面动态替换成新插件。这样就实现了启动时动态界面替换。
打了比方说,如果我觉得目前的界面和控件不符合需求,可以写一个新的界面库,将该界面库的dll文件拷贝到插件目录下,即可自动替换掉原来的View.删除该dll后,就会恢复成原有的View,非常简单方便。
四. 思考:对“无类型”数据的处理
由于数据类型也是插件的一份子,因此可以方便的添加新的数据类型,但依旧有麻烦的事情。
比如对“人”,有的数据是面对普通微博用户的,有些是面对企业和政府高官的,有些是面向学生教师的,他们都具有各自的特性和自定义字段。随着要处理的数据变多,这种问题变得更加尖锐。
为了处理一次数据,我们没有必要去为其新建一个数据类型(而且还是重复的)。但我们也不可能做到把所有可能的属性都添加到队列中。而系统现在只能处理“类型”数据,依赖它去存储,可视化,分析,计算…
如何解决这一问题呢?这一点可以向Excel学习,Excel本身不需要定义数据类型,通过表格的X,Y坐标命名变量并实现功能。这是一种很好的思路。但如果我也按照这样的方式处理,那么软件也成了Excel,反而丧失了它的价值。而统计这一类简单的功能还好说,对于更复杂的数据挖掘功能,如何处理这种无类型的数据呢?这真是个复杂的问题!
五. 说好的“算法”呢?
所有的读者可能都有这样的疑问,楼主你们做的是一个数据挖掘工具啊,怎么只见你更新“工具”的功能,却没有更新“数据挖掘”的功能啊?那些牛逼的算法呢?这个问题我也知道,如果没有精巧的机器学习/数据挖掘的算法模块,就算打造成一个超牛的数据可视化工具,又如何呢? 只是作者目前时间有限,做工具比做算法的实践性更高一些。我马上要找工作了啊亲!
之后的时间,关联规则,自动推荐,高级的聚类和分类算法,语义分析。。。这些模块才是最重要的,要做的事情多着呢。。。加油!
ITTC数据挖掘系统(六)批量任务,数据查看器和自由文档的更多相关文章
- CentOS6.4下使用默认的文档查看器打开PDF文档乱码的解决方案
最近在CentOS6.4下使用其默认的文档查看器打开PDF文档时出现乱码的方块,有两种方法可以解决. 方法一:修改/etc/fonts/conf.d/49-sansserif.conf文件,如 ...
- python实用小技巧自问自答系列(一):查看类中函数文档doc的方法
问题:如何查看某个类的方法文档说明或者是函数的参数列表情况? 答: 方法一:直接在需要查询的方法后面加上".__doc__"即可以打印出该方法的文档说明(需要先导入该方法所属模块) ...
- 从多个XML文档中读取数据用于显示webapi帮助文档
前言: 你先得知道HelpPageConfig文件,不知道说明你现在不需要这个,所以下文就不用看了,等知道了再看也不急.当然如果你很知道这个,下文也不用看了,因为你会了. 方法一: new XmlDo ...
- Nemo Documents – 给文件添加标签 以日历的形式将文件呈现出来,很像 Outlook,你可以根据年、月、日来查看不同类型的文档
Nemo Documents – 给文件添加标签 scavin(Google+) on 2012.03.28. Nemo Documents 是款文件组织管理工具(文档管理器),不是街道大妈胜似大 ...
- 【C#】获取当前系统桌面、我的照片、我的文档等路径
获取当前系统桌面.我的照片.我的文档等路径 using System; using System.Collections.Generic; using System.ComponentModel; ...
- [Swift通天遁地]七、数据与安全-(1)XML文档的创建和解析
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...
- 从隔壁兄弟那爬点网页数据,整理成word文档
package com.parse_report; import com.report.utils.ParseUrl; /** * Create by JIUN 2018/7/14 */ public ...
- 在Outlook中查看预览SharePoint文档库的文档
本文概况 阅读时间: 约2分钟 适用版本:SharePoint Server 2010及以上 面向用户:普通用户,管理员 难度指数:★★☆☆☆ 在日常工作中,总有一些常用的文档需要经常打开查看,其实我 ...
- Storm项目:流数据监控1《设计文档…
博客公告: (1)本博客全部博客文章搬迁至<博客虫>http://blogchong.com/ (2)文章相应的源代码下载链接參考博客虫站点首页的"代码GIT". (3 ...
随机推荐
- 【探索】在 JavaScript 中使用 C 程序
JavaScript 是个灵活的脚本语言,能方便的处理业务逻辑.当需要传输通信时,我们大多选择 JSON 或 XML 格式. 但在数据长度非常苛刻的情况下,文本协议的效率就非常低了,这时不得不使用二进 ...
- Convert BSpline Curve to Arc Spline in OpenCASCADE
Convert BSpline Curve to Arc Spline in OpenCASCADE eryar@163.com Abstract. The paper based on OpenCA ...
- 结巴分词3--基于汉字成词能力的HMM模型识别未登录词
作者:zhbzz2007 出处:http://www.cnblogs.com/zhbzz2007 欢迎转载,也请保留这段声明.谢谢! 1 算法简介 在 结巴分词2--基于前缀词典及动态规划实现分词 博 ...
- [.NET] C# 知识回顾 - 委托 delegate (续)
C# 知识回顾 - 委托 delegate (续) [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/6046171.html 序 上篇<C# 知识回 ...
- ZKWeb网页框架1.1正式发布
发行日志 https://github.com/zkweb-framework/ZKWeb/blob/master/ReleaseNotes/ReleaseNote.1.1.md 主要改动 添加EFC ...
- Spring的数据库开发
Spring JDBC框架操作mysql数据库 Spring中的JDBC为我们省去连接和关闭数据库的代码,我们着重关注对数据库的操作.Sprin ...
- ABP项目中使用Swagger生成动态WebAPI
本文是根据角落的白板报的<使用ABP实现SwaggerUI,生成动态webapi>一文的学习总结,感谢原文作者角落的白板报. 1 安装Swashbuckle.core 1.1 选择WebA ...
- 使用Git Bash远程添加分支和简单部署你的静态页面
新建一个分支:git branch mybranch(mybranch你的分支名字) 切换到你的新分支: git checkout mybranch 将新分支发布在github上: git push ...
- git &github 快速入门
本节内容 github介绍 安装 仓库创建& 提交代码 代码回滚 工作区和暂存区 撤销修改 删除操作 远程仓库 分支管理 多人协作 github使用 忽略特殊文件.gitignore 1.gi ...
- 最牛的打字效果JS插件 typing.js
最新在做公司的一个项目,需要实现一个敲打代码的动画效果,粗意味比较简单,果断自己直接开写,写着写着发现是一个坑.需要支持语法高亮,并不能直接简单的用setTimeout来动态附件innerHTML.苦 ...