惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Project Zero
Project Zero
F
Fortinet All Blogs
Recent Announcements
Recent Announcements
云风的 BLOG
云风的 BLOG
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
M
MIT News - Artificial intelligence
S
SegmentFault 最新的问题
Blog — PlanetScale
Blog — PlanetScale
T
Tailwind CSS Blog
WordPress大学
WordPress大学
Engineering at Meta
Engineering at Meta
S
Schneier on Security
N
News and Events Feed by Topic
N
News | PayPal Newsroom
H
Help Net Security
C
CXSECURITY Database RSS Feed - CXSecurity.com
T
The Exploit Database - CXSecurity.com
Attack and Defense Labs
Attack and Defense Labs
博客园 - Franky
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
J
Java Code Geeks
A
About on SuperTechFans
AWS News Blog
AWS News Blog
S
Secure Thoughts
The Cloudflare Blog
Hugging Face - Blog
Hugging Face - Blog
爱范儿
爱范儿
C
Cybersecurity and Infrastructure Security Agency CISA
V2EX - 技术
V2EX - 技术
Recorded Future
Recorded Future
Microsoft Azure Blog
Microsoft Azure Blog
博客园_首页
MyScale Blog
MyScale Blog
Martin Fowler
Martin Fowler
Help Net Security
Help Net Security
人人都是产品经理
人人都是产品经理
Latest news
Latest news
C
Cyber Attacks, Cyber Crime and Cyber Security
大猫的无限游戏
大猫的无限游戏
The Last Watchdog
The Last Watchdog
www.infosecurity-magazine.com
www.infosecurity-magazine.com
月光博客
月光博客
H
Hacker News: Front Page
P
Proofpoint News Feed
N
News and Events Feed by Topic
H
Heimdal Security Blog
L
Lohrmann on Cybersecurity
有赞技术团队
有赞技术团队
L
LangChain Blog
Application and Cybersecurity Blog
Application and Cybersecurity Blog

GeekPlux

一代人的博客,一代人的青春注脚 那些年我打过的日结工 来美国的两年后 2023 一蓑烟雨 在美国拥有一辆 Tesla 的成本 我的 Workspaces 十年进化史 How to Sync Logseq Plugins, Themes and Settings Across Multiple Devices Setting Up Umami as Your Google Analytics Alternative: A Step-by-Step Guide 迁移豆瓣读书记录到 goodreads Enhance Your Internet Privacy in 2023 Refactor your blog comments system with Webmention.io 来美国之后,如何快速安顿下来 Three Levels of Information Perception 疫情三年 与人聊天的美好 我获取信息的方法 2022 版 我是如何学会编程的 Legacy code best practice: how to take over an existing project smoothly 2020 恍如隔世 接外包的一些坑和小技巧 论交友 往返香港隔离指南 即将失明,还能继续做程序员吗 小谈我对新技术的态度 How to use tailwindcss with AMP in a Next.js project 远程工作如何提高效率 复式记账、财报、量化与图论 我为什么从阿里巴巴离职 2019 柳暗花明 投资被动型指数基金正在造成下一次金融泡沫? 三种主流的网赚套利,躺着赚钱? 色盲的世界 我是如何管理 21 张信用卡的 薅羊毛的最大意义:保持对规则的敏感度 来香港的两个月 数据可视化技术实现的关键点 如何找到时薪 80 美元的远程工作(二) 如何找到时薪 80 美元的远程工作(一) 如何打造真正的简历 舍本逐末的学习方式 给想转行作程序员的人泼一盆冷水 算法优化人生之 —— 调度算法 杭州最适合闲来溜达的几条路线 2018 平淡无奇 突闻金庸先生逝世有感 十年博客折腾历史 数据可视化之 Sankey 桑基图的实现 研究生生涯总结 Web 前端中的增强现实(AR)开发技术 参加 Google Summer of Code 的体验 netjsongraph.js – Google Summer of Code (GSoC) 2017 summary 如何在 GitHub 上获得数百 stars Markvis - 在 markdown 中生成可视化图表 D3 force layout and WebGL integration 文本数据可视化(下)——一图胜千言 文本数据可视化(上)——从 Wordle 谈起 我获取信息的渠道 数据可视化基础——视觉编码 数据可视化基础——数据模型 数据可视化基础——可视化流程 为什么要用 Emacs Vega-Lite: A Grammar of Interactive Graphics 如何阅读一篇学术论文 超过十个人的微信群根本没有价值 毕业后的两年 建立索引式的学习方法 为什么我喜欢写代码 为什么文章写得好的人都很厉害 人总要有点盲目的自信 如何管理好自己的密码 Backbone View 之间通信的三种方式 Vim - 适合自己的,才是最好的 轻松玩转 Ukulele 告别社交网络有多难 双拼学习记 CoffeeScript 编码风格指南(译) CoffeeScript 笔记 CSS 最核心的几个概念 响应式设计简易指南(译) 初识 TDD Collapsing margins——合并的外边距 菜鸟级 Mac 配置(二) 菜鸟级 Mac 配置(一) CSS 编写原则 Goodbye,我的大学 如何新建一个 Cocos2d-x 项目 Windows8.1 下 Cocos2d-x 环境搭建 Android 开发如何入门 如何绑定独立域名 写博客就用 FarBox 尝试改变微信公众账号消息的推送方式 情似流水 操作系统总结——存储器管理 操作系统总结——处理机管理 操作系统总结——引论 C++指针与引用小结 该不该制定计划 幸福,是一种能力 弱冠,瞎扯 别当回事儿
浅思图数据可视化
GeekPlux · 2019-07-17 · via GeekPlux

原文地址:https://geekplux.com/2019/07/27/network-data-visualization

Why - 图分析的价值

首先,图是最能描述世界的结构。几乎所有事物都能抽象成图。有一门学科叫作“复杂网络”是专门用图这种数据结构来研究世界规律的。图一直是炙手可热的研究方向,国内复杂网络的研究不仅热门,也颇有成就。在图分析领域,已经沉淀了很多分析方法、研究模式,我们光是把这些现成的算法筛选,进而应用到我们的业务中已经很有价值了,更别说我们可以根据我们的需求去拓展图分析的边界。

目前我能想到的一些场景:

  • 分析网络中的结构。哪些节点形成了“孤岛”,哪些节点的重要性、影响力巨大
  • 关键节点挖掘。关键节点就是那些能够在更大程度上影响网络的结构与功能的一些特殊节点。准确发掘出网络中的关键节点,可以帮助我们更好地控制信息的传播、精准投放商品广告、预测热门研究成果等等。
  • 链路分析,链路预测。分析用户跳转的路径,分析服务器、数据库请求的路径、故障分析。预测用户可能跳转的地方,行为预测,推荐系统。

具体的场景:

用户进入一个网站之后,不停的跳转,然后每个页面是一个节点,每次跳转是一条边。我能不能比较多个用户跳转图的相似性,先把他们分类,然后再比较他们的偏好不同。搞清楚用户到底是为什么点击到了这个产品,这个链路的特点是什么,等等。

计算 - 图数据结构类库

既然图可视化需求这么多,我觉得应该把数据作为核心,数据和视图分离,抽象出一个单独的模块用来维护、处理、计算图数据结构。比如基本的节点查找、路径查找、最小生成树算法等等。

这个库的作用只用来计算,输出统一结构的图数据,我们甚至可以将图数据定义标准化,这样在其他图可视化或应用到图数据结构的场景中就能通用。

类似的轮子已经有了,我所用过最强大的是 networkx ,但它是一个 python 库。我调研了一下发现目前前端可用的库要不是太简单(只能加减数据,查找节点),要不就太复杂(JSNetworkX ,是 networkx 的 JS 版,功能很多)。

定义了标准化的数据结构之后,就能将库设计为插件化的,主体只实现基本算法,插件实现特殊需求算法。

目前我想到的一些计算:

  • 密度。图实际边数与最大可能边数的比例。可以根据密度将图分层、分组、筛选、区分出小世界网络。
  • 度。节点的度是很重要的指标,度又分很多种:平均度、最大度、中心度。中心度(中心性)即该图中最重要的节点。
  • 路径。平均路径长度,可以算出该图中,一个点到另一个点必须经过的平均边数,比如从一个页面到另一个页面必须跳转多少次
  • 群聚指数。用于聚类分析等。
  • 邻居。最近邻居、共同邻居、bring neighbours 等
  • 相似性计算、相似子图:wl kernel、edit distance、graphlet kernel、reducing snapshots to points、向量化等

布局 - 图可视化布局

  • 邻接矩阵
  • 节点链接图(Node-Link)
    • 力引导布局(Force-Layout)
    • 弧长链接图
    • 弦图(Chord)
    • 桑基图(Sankey)
  • 混合布局(变种)
    • 恒星图
    • 弦图变种
    • 矩阵与节点链接图结合
    • 与玫瑰图结合

交互 - 图交互与分析

交互是数据可视分析中必不可少的步骤。通过各种交互,我们可以探索数据的模式。

典型的几个交互:

  • 过滤(filter)
  • 分组(group),分层
  • 路径展示(关键节点、路径分析)
  • 缩放(zoom)
  • 拖动(pan + drag)
  • Overview + detail (缩略图)
  • Fish eye (鱼眼效果)
  • Brush (圈选)
  • 切换布局(如从矩阵切换到节点-链接图)
  • 导出子图