mxgraph html5,mxgraph进阶(四)mxGraph再启程
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再启程相关推荐
- JavaScript进阶(四)
JavaScript进阶(四) 2019版黑马程序员javaScript进阶面向对象ES6 122集教程,哔哩哔哩链接:https://www.bilibili.com/video/BV1Kt411w ...
- 跨平台应用开发进阶(四十六)webview方式嵌套H5应用加载慢解决方案
文章目录 一.前言 二.优化建议 三.实施方案 3.1 优化项目结构,减小项目组包体积 3.2 去除项目冗余字体文件 3.2.1 字体筛选 3.2.2 字体压缩 3.3 gzip压缩 3.4 ETag ...
- Docker 学习笔记 - 进阶四 Docker网络和 Docker compose
Docker 学习笔记 - 进阶四 Docker网络和 Docker compose 4. docker 网络 4.1 docker network是什么 4.1.1 docker不启动,默认网络情况 ...
- 【系统分析师之路】系统分析师再启程
[系统分析师之路]系统分析师再启程 系统分析师再启程 [系统分析师之路]系统分析师再启程 前言 下一站:系统分析师 第一阶段:预热阶段(50人时) 第二阶段:全面复习阶段(60人时) 第三阶段:历年真 ...
- mysql学习笔记之排序查询和函数(进阶四)
USE myemployees; #进阶四:排序查询() /* 语法: select 查询列表 from 表 order by 排序列表[asc|desc]asc升序desc降序,可不写,默认升序 / ...
- HTML5游戏开发(四):飞机大战之显示场景和元素
<HTML5游戏开发>系列文章的目的有:一.以最小的成本去入门egret小项目开发,官方的教程一直都是面向中重型:二.egret可以非常轻量:三.egret相比PIXI.js和sprite ...
- AngularJS进阶(四十)创建模块、服务
AngularJS进阶(四十)创建模块.服务 学习要点 使用模块构架应用 创建和使用服务 为什么要使用和创建服务与模块? 服务允许你打包可重用的功能,使之能在此应用中使用. 模块允许你打包可重用的功能 ...
- Mysql进阶四:常见函数-日期函数
进阶四:日期函数 作者:alicomon 寄语读者: 博客为学习记录,目的有二: 记录知识点,方便温故知新: 为读者提供帮助,用于交流,共同提高. 1.now 返回当前系统日期+时间 SELECT N ...
- HTML5游戏开发(四)
HTML5游戏开发(四) 一.线段 (一)网格绘制 <!DOCTYPE html> <html><head><meta charset="UTF-8 ...
最新文章
- 他给女朋友做了个树莓派复古相机,算法代码可自己编写,成本不到700元丨开源...
- SAP MM VL32N和MIGO对内向交货单做收货,都会更新其‘总体货物移动状态‘
- C++和C语言中enum 如何使用
- 学python必须知道的30个技巧
- flowable理论(三)flowable简介
- 设置servlet或action作为欢迎页面
- 刷题刷题 ——网易CPP
- matlab2c使用c++实现matlab函数系列教程-std函数
- 华为笔试题:根据子网掩码判断两个IP地址是否在同一子网,并输出IP1的网络号
- win7计算机的ip地址设置,如何将win7ip地址设置成自动获取
- springmvc GET POST 接受参数方式
- Deferred异步操作
- 单道批处理系统与多道批处理系统(操作系统)
- linux gpio喂狗驱动
- 文件的基本操作--利用爬取的王者荣耀李信台词进行练习
- Axure9中使用中继器实现单选效果
- 计算机科学类专升本复习之“C语言fopen函数的用法”详解(初稿)
- 纷享销客CRM自定义函数:计划任务
- Centos8安装mindoc实操
- React入门笔记(一)
热门文章
- 聚类中心-最邻近交叉口距离密度分布图
- 北航22届的朋友,去年拿到大厂Offer,用同样简历去找工作,今年。。。
- TypeError: super(type, obj): obj must be an instance or subtype of type
- R语言筛选dataframe中两个日期之外的数据行,介于两个日期(包括两个日期)之间的数据行
- CSS栅格布局(Grid)
- 测试 文章 与测试用例
- VM10装Mac OS X 10.9.3
- Linux网络编程——在线词典项目
- 路由器当做网页服务器,路由器为什么不可以做服务器?
- 如何看待 OPPO 发布的首款 6nm NPU芯片