Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

5.1 可视化入门

俗话说“一图胜千言”, 这恰恰体现了视觉传播的价值和效率。

1. 可视化的科学

1.1 视觉中枢

研究发现,大脑的一大任务就是视觉处理,几乎半个大脑都是直接或间接用来处理视觉功能的,详见[1]。

涉及这项活动的细胞、神经元、纤维的数量非常庞大。 仅眼睛内部的视网膜就由超过1.5亿个细胞构成,它实际上是大脑的延伸部分。 另外,大脑中与视觉相关的神经元占了很大的比重,将近30%的脑灰质由这些神经元组成。 相比之下,与触觉和听觉有关的神经元只占了8%和3%,参见[2]。

1.2 视觉利于理解

基于这些视觉“网络”,我们不难理解,比起单纯文本,大脑处理信息图会更加省力。

单词中的每一个字母都代表一个符号。 在阅读文本的时候,大脑首先对其解码,将这些字母与记忆中存储的形状相匹配,进一步理解这些字母如何组成单词, 单词再组成句子,句子最后组成段落。尽管这一解读过程只需瞬间完成,但与大脑处理图像的方式相比,还是需要消耗更多的脑力,参见[3]。

有时,我们无法直观的理解数据,就像下图,如果不将数字进行编码和着色,我们永远猜不到图片里隐藏了一位女士。

MonaLisa

2. 可视化的图类型

数据可视化,主要体现对于数据的呈现方式。比如使用线条、饼状、柱状、条状、环状、地理图等等来呈现数据。

business_visual

商业可视化是指通过图表、图形、地图、仪表盘等可视化工具和技术,将商业数据和信息转化为易于理解和分析的可视化形式。它旨在帮助企业和组织更好地理解和解释数据,发现趋势、模式和关联,以支持决策和业务优化。商业可视化可以应用于各个领域,包括销售、市场营销、财务、供应链、人力资源等。 商业可视化可以使用多种图表类型,例如折线图、柱状图、饼图、散点图、热力图、树状图、地图、仪表盘等。此外,还有雷达图、箱线图、漏斗图、气泡图等其他类型的图表。

3. 可视化与Python

Python科学可视化领域是巨大的(见下图)。它由无数的工具组成,从最通用和广泛使用的到更专业和精密的。其中一些工具是基于社区的,而另一些则由公司开发。有些是专门为网页制作的,有些只针对桌面,有些处理3D和大数据,而有些则针对完美的2D渲染。

PythonVisual

选择很多造成了很难找到最适合你需要的库,只是因为您可能甚至没有意识到这个或那个库的存在。为了帮助你做出选择,你可以先问自己几个问题:

  • 你的目标是桌面渲染还是网页渲染?

  • 你需要复杂的3D渲染吗?

  • 你需要出版质量吗?

  • 你有非常大的数据吗?

  • 是否有活跃的社区?

  • 是否有文档和教程?

根据你的答案,你可能能够决定使用哪个Python库,并投入一些时间来学习它。例如,如果你需要在浏览器中与Jupyter无缝集成的交互式可视化,bokeh可能是一个答案。如果你有非常大的数据,需要在桌面上使用3D, vispymayavi可能是一个选择。如果你对一个非常直观的工具感兴趣,快速展示漂亮的统计信息,那么seabornaltair是你的朋友。然而,如果你从事的是地球科学,那么你就不能忽视cartopy等。pyviz网站是一个很好的信息来源,它提供了许多可视化库的列表。

可视化库官网可交互擅长
matplotlibhttps://matplotlib.org/stable/index.html基础绘图库
seabornhttps://seaborn.pydata.org统计数据可视化
bokehhttps://bokeh.org交互式绘图
altairhttps://altair-viz.github.io/gallery/index.html交互式绘图
HoloVizhttps://examples.holoviz.org/gallery/index.html交互式绘图

4. 一些有趣的应用

4.1 动态显示各个国家的生育率

链接: https://demo.bokeh.org/gapminder

BirthRates

在金融投资组合优化中,有效前沿(Efficient Frontier)是指在给定风险水平下,能够获得最高预期收益的投资组合集合。有效前沿是由不同风险水平下的最优投资组合构成的曲线。

参考

  1. MIT Research - Brain Processing of Visual Information, http://bit.ly/smIcH0

  2. 参见Denise Grady发表在Discover杂志的文章:“The Vision Thing: Mainly in the Brain”,http://bit.ly/upYVBr

  3. “Show Me! What Brain Research Says About Visuals in PowerPoint”,链接为:http://bitly.com/s3lseP

  4. Mark Smiciklas,《视不可挡:信息图与可视化传播》, 人民邮电出版社

  5. Nicolas P.Rougier, Scientific Visualization: Pyhon & Matplotlib[M], https://github.com/rougier/scientific-visualization-book/

  6. pyviz, 帮助用户根据自己的目的决定最好的开源(OSS) Python数据可视化工具,提供链接、概述、比较和示例, https://pyviz.org/overviews/index.html

  7. 高维空间可视化: https://www.youtube.com/watch?v=wvsE8jm1GzE&t=30s

  8. 使用matplotlib和pandas的绘图示例代码,https://www.python-graph-gallery.com