mxgraph进阶(四)mxGraph再启程

前言

小论文Constructing User Interaction Behaviors Net from System Log. (AICE 2016)依然实现,为了能够顺利毕业。马导师希望自己能够再写一篇高质量的期刊论文(不然盲审比较棘手,被动)。另外,还需要接着之前所做的系统继续完善,毕竟自己的大论文是以此为基础的。整理好思路,mxGraph再起航。

回顾自己之前所实现的系统,结果图如下所示:

图中的节点及有向边、权重均为自己初始化所展现。现在的任务是用户行为序列为前期整理所得,并实现对所得序列进行用户交互行为网的自动生成。即构建用户交互行为网的自动生成系统。

初始化代码如下:

var behaviorArray = new Array();

behaviorArray[0] = "01234";

behaviorArray[1] = "02456";

behaviorArray[2] = "14506";

behaviorArray[3] = "120356";

behaviorArray[4] = "0145456";

现在自己的工作就是完成数据库到html页面的数据传输并展示。

通过阅读代码发现可以通过文件读取的方式个性化显示mxGraph,以下为实例结果。

实例源码如下:

文件IO例子

其中,读取的文件“fileio.txt”内容如下:

Custom file format for fileio.html (comments start with #, all vertices first)

Vertices (id: label)

1:

Last, First

Status

Info

2:

Errorcode

Status

Info

3:

Warning

Status

Info

4:

Groupname

Status

Info

5:

Workplace

Status

Info

6:

Information

Status

Info

7:

Printername

Status

Info

Edges (source-id,target-id: label)

1,2:

Hint

1,3:

News

1,4:

Member

5,6:

Details

5,7:

Access

4,5:

Access

1,5:

2-Way

很明显,fileio.txt文件中只是定义了节点、边及其相关标识,注意到其中定义了特殊的双向边。但此双向边是在文件中初始化完成的。自己需要改进。

基于此,自己可首先实现文件的写操作,然后实现文件读取并实现前台展现操作。

初步结果如下:

接下来的工作是实现日志处理,将每个操作映射为连续的正整数,并写入相应的数据库与相应文件内。文件格式如下:

Custom file format for fileio.html (comments start with #, all vertices first)

Vertices (id: label)

1: 1

2: 2

3: 3

4: 4

5: 5

6: 6

7: 7

Edges (source-id,target-id: label)

1,2: 2

1,3: 3

1,4: 3

5,6: 1

5,7: 5

4,5: 3

1,5: 2-Way

基本操作过程如下:

数据预处理

在预处理后的单用户日志情况下,生成的用户交互行为网如下图所示:

其对应的数据库信息为:

做学术,就是要将简单的事情尽可能的复杂化处理,上升到学术理论的高度。加入一些数学理论,说服力更强。

结合Petri Net解决问题,恰到好处。

所做的mxGraph图像中,

① 需要将双向箭头改为两个单向箭头;

② 并实现交互次数的精确统计;

③ 在动作上附加输入参数。

整理后的用户交互图如下图所示:

上图数据均为实际日志提取所得,并非数据初始化。

友情链接

mxgraph html5,mxgraph进阶(四)mxGraph再启程相关推荐

  1. JavaScript进阶(四)

    JavaScript进阶(四) 2019版黑马程序员javaScript进阶面向对象ES6 122集教程,哔哩哔哩链接:https://www.bilibili.com/video/BV1Kt411w ...

  2. 跨平台应用开发进阶(四十六)webview方式嵌套H5应用加载慢解决方案

    文章目录 一.前言 二.优化建议 三.实施方案 3.1 优化项目结构,减小项目组包体积 3.2 去除项目冗余字体文件 3.2.1 字体筛选 3.2.2 字体压缩 3.3 gzip压缩 3.4 ETag ...

  3. Docker 学习笔记 - 进阶四 Docker网络和 Docker compose

    Docker 学习笔记 - 进阶四 Docker网络和 Docker compose 4. docker 网络 4.1 docker network是什么 4.1.1 docker不启动,默认网络情况 ...

  4. 【系统分析师之路】系统分析师再启程

    [系统分析师之路]系统分析师再启程 系统分析师再启程 [系统分析师之路]系统分析师再启程 前言 下一站:系统分析师 第一阶段:预热阶段(50人时) 第二阶段:全面复习阶段(60人时) 第三阶段:历年真 ...

  5. mysql学习笔记之排序查询和函数(进阶四)

    USE myemployees; #进阶四:排序查询() /* 语法: select 查询列表 from 表 order by 排序列表[asc|desc]asc升序desc降序,可不写,默认升序 / ...

  6. HTML5游戏开发(四):飞机大战之显示场景和元素

    <HTML5游戏开发>系列文章的目的有:一.以最小的成本去入门egret小项目开发,官方的教程一直都是面向中重型:二.egret可以非常轻量:三.egret相比PIXI.js和sprite ...

  7. AngularJS进阶(四十)创建模块、服务

    AngularJS进阶(四十)创建模块.服务 学习要点 使用模块构架应用 创建和使用服务 为什么要使用和创建服务与模块? 服务允许你打包可重用的功能,使之能在此应用中使用. 模块允许你打包可重用的功能 ...

  8. Mysql进阶四:常见函数-日期函数

    进阶四:日期函数 作者:alicomon 寄语读者: 博客为学习记录,目的有二: 记录知识点,方便温故知新: 为读者提供帮助,用于交流,共同提高. 1.now 返回当前系统日期+时间 SELECT N ...

  9. HTML5游戏开发(四)

    HTML5游戏开发(四) 一.线段 (一)网格绘制 <!DOCTYPE html> <html><head><meta charset="UTF-8 ...

最新文章

  1. 他给女朋友做了个树莓派复古相机,算法代码可自己编写,成本不到700元丨开源...
  2. SAP MM VL32N和MIGO对内向交货单做收货,都会更新其‘总体货物移动状态‘
  3. C++和C语言中enum 如何使用
  4. 学python必须知道的30个技巧
  5. flowable理论(三)flowable简介
  6. 设置servlet或action作为欢迎页面
  7. 刷题刷题 ——网易CPP
  8. matlab2c使用c++实现matlab函数系列教程-std函数
  9. 华为笔试题:根据子网掩码判断两个IP地址是否在同一子网,并输出IP1的网络号
  10. win7计算机的ip地址设置,如何将win7ip地址设置成自动获取
  11. springmvc GET POST 接受参数方式
  12. Deferred异步操作
  13. 单道批处理系统与多道批处理系统(操作系统)
  14. linux gpio喂狗驱动
  15. 文件的基本操作--利用爬取的王者荣耀李信台词进行练习
  16. Axure9中使用中继器实现单选效果
  17. 计算机科学类专升本复习之“C语言fopen函数的用法”详解(初稿)
  18. 纷享销客CRM自定义函数:计划任务
  19. Centos8安装mindoc实操
  20. React入门笔记(一)

热门文章

  1. 聚类中心-最邻近交叉口距离密度分布图
  2. 北航22届的朋友,去年拿到大厂Offer,用同样简历去找工作,今年。。。
  3. TypeError: super(type, obj): obj must be an instance or subtype of type
  4. R语言筛选dataframe中两个日期之外的数据行,介于两个日期(包括两个日期)之间的数据行
  5. CSS栅格布局(Grid)
  6. 测试 文章 与测试用例
  7. VM10装Mac OS X 10.9.3
  8. Linux网络编程——在线词典项目
  9. 路由器当做网页服务器,路由器为什么不可以做服务器?
  10. 如何看待 OPPO 发布的首款 6nm NPU芯片