数据可视化

博客分类: 江河计划

数据可视化

算法

颠倒二进制位

颠倒给定的 32 位无符号整数的二进制位。

示例:

输入: 43261596
输出: 964176192
解释: 43261596 的二进制表示形式为 00000010100101000001111010011100 ,
     返回 964176192,其二进制表示形式为 00111001011110000010100101000000 。
var reverseBits = function(n) {
    var num = n.toString(2).split('');
    while(num.length < 32){num.unshift('0')};
    return parseInt(num.reverse().join(''), 2);
};

帕斯卡三角形

给定一个非负整数 numRows,生成杨辉三角的前 numRows 行。

输入: 5
输出:
[
     [1],
    [1,1],
   [1,2,1],
  [1,3,3,1],
 [1,4,6,4,1]
]
var generate = function(numRows) {
    var res = [];
    var beforeNums = [];
    for(var i=1; i<=numRows; i++){
        var nums = new Array(i);
        if(i < 3){
            nums = nums.fill(1);
            
        }else{
            nums[0] = 1;
            nums[i-1] = 1;
            for(var j=1; j<i-1; j++){
                nums[j] = beforeNums[j-1] + beforeNums[j];
            }
        }
        beforeNums = nums;
        res.push(nums)
    }
    return res;
};

数据可视化

科学可视化(Scientific Visualization)、 信息可视化(Information Visualization)和可视分析学(Visual Analytics)三个学科方向通常被看成可视化的三个主要分支。而将这三个分支整合在一起形成的新学科 “数据可视化”

科学可视化

科学可视化(Scientific Visualization)是科学之中的一个跨学科研究与应用领域,主要关注三维现象的可视化,如建筑学、气象学、医学或生物学方面的各种系统,重点在于对体、面以及光源等等的逼真渲染。科学可视化是计算机图形学的一个子集,是计算机科学的一个分支。 科学可视化的目的是以图形方式说明科学数据,使科学家能够从数据中了解、说明和收集规律。

信息可视化

信息可视化(Information Visualization)是研究抽象数据的交互式视觉表示以加强人类认知。 抽象数据包括数字和非数字数据,如地理信息与文本。信息可视化与科学可视化有所不同:科学可视化处理的数据具有天然几何结构(如磁感线、流体分布等),信息可视化处理的数据具有抽象数据结构。柱状图、趋势图、流程图、树状图等,都属于信息可视化,这些图形的设计都将抽象的概念转化成为可视化信息。

可视分析学

可视分析学(Visual Analytics)是随着科学可视化和信息可视化发展而形成的新领域,重点是通过交互式视觉界面进行分析推理。

区别

为什么需要数据可视化

数据可视化过程

数据可视化分析原则

任务层次

可以简单的理解成数据呈现,信息加工,辅助决策。

数据获取:该层解决用户的第一是问题“是什么”,用户主要通过浏览查看来获取数据,其通用交互范式为 Overview + Detail(概览+细节),常见于传统数据报表、汇报型图表、大屏等,比如流量监控、区域销售大盘。

信息加工:该层解决用户的第二个问题“为什么”,当图上有看不懂的信息时,用户期望有人告诉他为什么会这样,或者自己查探明究竟,其通用交互范式为 Focus + Context(聚焦+关联),常见于富交互的统计报表,或海量、高维、多源的可视分析系统。

知识流转:该层解决用户的第三个问题“怎么办”,当获取洞见通用交互范式为 Annote + Guide(标记+指引),常见于可视分析系统、智能分析、智能决策系统,比如运营专员对异常点进行标记辅助管理员进行决策,智能系统对整体趋势进行解读与归因分析。