" G$ U6 j6 ^. F2 B# d
常用的数据可视化方法有哪些?数据可视化可以通过视觉形式来呈现抽象的数据信息,有利于对数据进行更深入的观察和分析,想了解如何用编程定制属于自己的数据可视化?可以往下看看。
; Y8 }( Z0 }3 z% d" J # Y& s. F+ c5 ~
. p9 p. q$ d. ~/ q, m: Z' i: n) V+ q$ T: d
打开凤凰新闻,查看更多高清图片
* P/ Z# J+ L! x/ i& B( k
" F" ^$ k, S% _# v( |5 `+ g: K5 q
5 ~ X" [" R4 s; M+ I( b$ w- h. [
第一步:处理和格式化数据
* N' E6 ^* `+ S, r) m4 w$ I3 n Python:当我有一个非矩形分隔的文件 ,或数据比较凌乱时,我会写一些特别的Python脚本。幸运的话,我会找到并重新利用过去已有的脚本。有时会用Beautiful Soup来修饰,有时会用csvkit 。
$ [3 G6 m+ B% x. I L) w R:我只有在需要加载csv格式表格时才会用到R,通常只是做数据聚合,合并,或处理从原来的数据中派生的部分。
1 I: M0 K# b# V' X- v: c! r$ p* f Tabula:多用于公开的政府数据,包括在 PDF文件中涉及的数据。没有 Tabula的话这个过程将非常痛苦。
3 z" d4 w r6 C/ J7 J Microsoft Excel:只有在有需求的时候才会用到它。数据读入Excel中,然后再导入像Numbers或是OpenOffice这样的工具中。
5 o2 ^6 m8 _$ y! }/ P3 k) N
Google Sheets:有时使用电子表格比写脚本更快,我很喜欢这样简洁的过程。
l7 b, x! ^7 {1 P6 R2 |
第二步:分析数据
! X& H9 e7 J! Y: h! k 在你去做最后的图形之前,你需要先了解这个数据集。
, T$ P: y- r: ?1 K+ a 这里我想到的是R。因为R作为一个开源的统计计算语言,它有一个很丰富的社区,数不尽的扩展包,以及在Stack Overflow上大量的已解答的问题。
# _4 J1 _+ ]: V+ M7 c3 y* [ 第三步:制作静态图形
y" v# M- F2 `( h) X 这对我来说通常包含两个阶段:(i)在R中进行可视化; (ii)在Illustrator中润色。
; z8 j$ e8 l r- g- y
R:在R中有可视化工具包,如ggplot2,但我几乎全部使用R自带的那些功能,即base R。
% `/ S% W' g& n( j; D) {5 z Adobe Illustrator:如果图形要发布给别人看,我会以PDF格式保存R生成的图形,并在Illustrator中编辑。虽然有些矫枉过正,但效果还不错。我也在考虑试着用Sketch。
; ^. V; O% o+ c8 F* N! I
第四步:制作交互式图形
7 {: z4 t6 w$ [8 e
Flash已经过时了,而Java是新的宠儿。R在这里应用不广。
5 ^4 |, y& Y. f" a
d3.js:我用数据驱动的文档来做交互式的数据可视化(我还在学习中)。有许多例子可以用来试手。但如果我想快速完成一个图表,我有时也会尝试用 Vega-Lite 。
* g0 w& G- @% z( _" Q0 @; r" J
但其实,我并不推荐大家用编程做数据可视化,除非是技术大佬想专研一些特别厉害的可视化。普通的使用建议大家可以使用零编程的可视化工具。
/ S1 }- d0 G" |2 H9 E2 O' H
常用的数据可视化方法有哪些?常用的可视化工具:
% B; `% k1 @, ` 1、Microsoft Excel
; ^. \4 D" ]' h 对于这个软件大家应该并不陌生,对于一般的可视化这个软件完全足矣,但是对于一些数据量较大的数据则不太适合。
6 h3 |* C) ~3 f! ? 2、Smartbi
0 L6 q: a O! C. |5 E
Smartbi现在比较受大家的欢迎,既可以超越Excel做一些稍微复杂的数据分析,又不用像R、Python那种编程语言进行可视化那么复杂。比较适合业务人员使用,简单拖拽就能生成自己想要的图表。支持业务主题和自助数据集,双布局设计,跨屏发布到APP,支持流式布局,功能还是很实用的。
# a) u j$ T. A2 k) W0 ^/ X