数据可视化

 

什么是数据可视化?

不可不知的三大要点

数据可视化是将数据转换为图形表示(如绘图、图表、地图和三维可视化)的过程,有助于轻松识别数据中的模式、趋势和离群值。

借助这些数据可视化,可以看到仅通过查看原始数据很难或无法观察到的关系,特别是对于来自传感器、数据记录器、医疗记录、Web 搜索模式和购买模式等数据源的大型数据集。数据可视化在将数据转换为可操作信息方面发挥着关键作用。

数据可视化有哪些优势?

数据可视化方法因具体领域而异。

计算金融学

基于历史数据或实时市场数据的数据可视化,有助于快速识别模式和趋势,检测异常,并获得有意义的见解。数据可视化有助于执行分析、开发预测模型、评估风险和制定正式的交易策略。

下图通过拟合历史数据的时间序列模型仿真电力现货价格的未来行为。

电力现货价格图,显示历史现货价格和趋势以及仿真的现货价格和趋势。x 轴是日期,y 轴是现货价格。

电力现货价格图,显示历史数据和预测的确定性趋势。

信号处理

信号处理用于语音分析、心率监测、无线通信、遥感、气候监测和 GPS 等应用中。常见任务涉及预处理和比较信号、设计数字滤波器、变换信号、执行测量以及检测模式和事件。数据可视化可用于在时域、频域和时频域中分析感兴趣的信号。

下图绘制的是太平洋蓝鲸的音频数据。可视化是在 MATLAB® 中使用信号分析器创建的,有助于在时域和频域中可视化信号。

信号分析器的截图,其中包含从太平洋蓝鲸的音频中提取的信号数据以及数据图。

从太平洋蓝鲸的音频中提取的感兴趣区域。

图像处理和计算机视觉

图像和视频处理有助于查找形状、执行对象计数、识别颜色、测量对象属性以及查找其他有意义的信息。图像处理方法通常用作计算机视觉工作流中的预处理步骤。此领域的应用包括智能手机的人脸识别、自动驾驶汽车中的行人避让和车辆避障、视频监控、医学 MRI 中的肿瘤检测及其他图像检索系统。

例如,宝马在驾驶辅助视图 (ADV) 中使用计算机视觉功能来描绘周围车辆并识别其类型。

演示目标检测的宝马驾驶辅助视图的截图。

宝马驾驶辅助视图。MATLAB 用来执行自动验证,包括图像配准、目标检测、真值标注,以及根据测试输出测试 ADV 场景。

人工智能 (AI)

数据可视化在开发 AI 模型(使用机器学习或深度学习)中发挥着重要作用,因为这些模型依赖于难以解释的大型数据集。在机器学习中,聚类分析有助于执行异常检测和数据预处理,以用于有监督学习。主成分分析 (PCA)t 分布随机近邻嵌入 (t-SNE) 是两种最常用的数据可视化方法,因为它们有助于降低数据维度,以便您能够专注于关键的区分维度。

在深度学习中,您可以使用网络准确度和损失图等数据可视化方法监控训练进度,并使用梯度加权类激活映射 (Grad-CAM)、遮挡敏感度、与模型无关的局部可解释性解释 (LIME) 和 Deep Dream 等可视化方法研究经过训练的网络。

三个不同品种鸢尾花的马氏图、余弦图、切比雪夫图和欧几里德图。

使用 Fisher 鸢尾花数据集绘制的不同品种的鸢尾花图。使用 tsne 函数绘制的可视化效果。

数据可视化的工作原理

软件包提供多项功能,可用于将原始数据转换为丰富的可视化效果,例如绘图、图表和示意图。下面以自行车流密度数据为例进行说明。如果仅以目测方式检查原始数据,则很难建立数据点之间的关系。

原始自行车流密度数据的预览。
时间戳 合计 西向 东向 时间
‘2015-06-24 07:00:00’ ‘Wednesday’ 141 13 128 7
‘2015-06-24 08:00:00’ ‘Wednesday’ 327 44 283 8
‘2015-06-24 09:00:00’ ‘Wednesday’ 184 32 152 9
‘2015-06-24 10:00:00’ ‘Wednesday’ 94 30 64 10
‘2015-06-24 11:00:00’ ‘Wednesday’ 67 24 43 11
‘2015-06-24 12:00:00’ ‘Wednesday’ 66 32 34 12
‘2015-06-24 13:00:00’ ‘Wednesday’ 67 32 35 13

下面的条形图显示自行车流密度在一周中的升降情况。现在,很容易看到,工作日骑车人数要比周末多。借助这种可视化,我们可以推断走这条路线的骑车人主要是上下班通勤人员。

一周中每天骑车人数中位数的条形图。

使用条形图绘制的自行车流数据。

散点图可用于从相同数据中获得更多见解。下图显示一天中特定时间东行和西行的自行车总数。根据此图,我们可以得出这样的结论:东向路线通往商业区,西向路线通往居民区。此外,我们还可以确定东向路线的交通高峰时段是上午 8 点到 10 点,西向路线的交通高峰时段是下午 4 点到 6 点。

波士顿自行车流的散点图。x 轴是一天中的时间,y 轴是自行车的总数。蓝色圆点表示东向骑车人,血橙色圆点表示西向骑车人。

按一天中的时间划分的东向和西向自行车流。

分簇散点图是一种特殊的散点图,可以显示一天中不同时间、一周中各天以及不同方向的自行车流密度模式。

波士顿自行车流的分簇散点图,标明工作日、一天中的时间和出行方向,显示自行车租赁数量的密度。

按星期几和方向划分的自行车流密度。

在自行车流示例中,使用不同类型的图(如条形图、散点图和分簇散点图)可视化数据,有助于我们从数据集中提取有用的信息,包括交通高峰日、通勤方向和一天中最繁忙的时段。

使用 MATLAB 实现数据可视化

MATLAB 是一种编程和数值计算平台,用于数据分析、算法开发和建模。它支持整个数据分析工作流,包括将数据直接采集到 MATLAB 中,分析和可视化这些数据,以及导出结果。您可以使用交互式 App 来可视化您的数据,而无需编写任何代码。这些 App 会自动为您生成适当的 MATLAB 代码,以便您能够自动化和重用工作。

创建数据可视化

MATLAB 提供了各种内置图类型,如线图、散点图、分布图和地理图,用于可视化来自各种应用的数据集。您可以使用 MATLAB 语言以交互方式或编程方式创建可视化。

探索数据可视化

您可以通过交互方式探索可视化,包括:

  • 放大和缩小数据集的特定部分
  • 以交互方式平移和旋转可视化效果
  • 直接在可视化效果上显示趋势线或数据值
  • 对数据点进行着色和突出显示
  • 在各域(例如时域、频域、S 域、Z 域)之间切换

注释和自定义数据可视化

您可以通过突出显示所要传达的基本信息,以交互方式注释可视化,例如:

  • 注释关键数据点
  • 添加数据提示
  • 添加轴标签
  • 按不同颜色和模式分组
  • 添加数据标记、线型和颜色

MATLAB 会自动根据您对图所做的交互式修改生成代码。您可以通过将该代码添加到脚本中来重用它。

I-Q 信号图。x 轴表示 x,y 轴表示归一化振幅。图中显示的是同相信号和正交信号。

修改可视化时可用的“更新代码”选项。

使用简单的图很难实现复杂数据集的可视化。MATLAB 可用于创建自定义图来满足可视化需求,并为其添加自定义交互。

示例包括:

  • 迷你图组件 - 创建小型线图,以显示多向量数据集(如表)中每个向量的总体趋势。观察并比较每行/每列的数据趋势。
  • 密度散点图 - 使用颜色(或透明度)来标识点的密度。
迷你图组件和密度散点图的截图,两图都绘制的是未标注数据。

迷你图组件(左)和密度散点图(右)。

访问 MATLAB Central 的 File Exchange,了解更多自定义图容器示例

导出数据可视化效果

您可以直接导出自定义的和带注释的可视化效果,以供在 Web 上、演示文稿和报告中使用。

截图显示图窗正保存到某个位置。

正在导出图窗。

将数据可视化与数据分析相集成

数据可视化通常与数据分析和预处理结合使用。MATLAB 的 App,如数据清洗器信号分析器,将这些步骤整合在了一起。

交互式控件让您无需编写任何代码即可指定操作,而相应的数据可视化可直接集成在 App 中。这样,您便可立即看到给定任务的结果。在您完成分析和预处理后,App 可以自动生成相应的 MATLAB 代码,让您可以自动执行这些步骤,即使基于不同数据也是如此。

特定于应用的可视化

MATLAB 工具箱提供特定于应用的可视化,以及将可视化与数据预处理和分析相结合的交互式 App。

计量经济学建模器的截图。

计量经济学建模器(在 Econometrics Toolbox™ 中提供),用于可视化和分析一元或多元时间序列数据。

幅值响应图的截图,x 轴表示频率(以 MHz 为单位),而 y 轴表示幅值。

多级数字下变频器(在 DSP System Toolbox™ 中提供)的各级频率响应。

有用信号和干扰信号的频谱图截图,x 轴表示频率(以 GHz 为单位),y 轴表示 dBm。

蓝牙 LE 阻塞、互调和载波干扰比性能测试(在 Bluetooth® Toolbox 中提供)。

相控阵系统的波束成形图截图,该系统用于测量多个维度的归一化功率(以 dB 为单位)。

相控阵系统(在 Phased Array System Toolbox™ 中提供)的波束成形。

将 MATLAB 与其他数据可视化工具结合使用

您可以使用 MATLAB 的计算和数据处理功能,通过其他商业智能工具创建可视化和控制板,此类工具如下:

案例研究

有趣的数据可视化应用

MATLAB 中的数据可视化功能使组织能够有效地达成其研究目标。

福特开发行驶工况测试结果分析工具

福特的车辆能源管理工程团队使用 MATLAB 开发出 CycleTool,用来评估车辆的排放、燃油经济性和性能。借助该工具,他们可以对照模型预测和仿真来可视化硬件测试结果,从而评估系统性能。

阅读案例

MATLAB 的截图,展示对照模型预测和仿真来可视化硬件测试结果的功能。

刷亮数据以在汇总应用中找出趋势。

使用高速摄像机和风洞破解蝴蝶飞行之谜

隆德大学的研究人员探究蝴蝶为何展现独特的振翅飞舞模式,并使用 MATLAB 进行图像处理、数据分析、建模和可视化。通过研究蝴蝶的飞行行为,工程师可以构造更高效、更动态的飞行无人机甚至会游泳的无人机。研究人员使用 MATLAB 数据可视化功能分析和比较了其机翼设计的性能。这些设计的灵感源自他们对蝴蝶飞行行为的分析。

阅读案例

四张图显示不同机翼类型,展示归一化时间内的冲量和能量。

柔性翼可以提高扑翼推力和效率。

道富环球开发评分模型,为 ESG 投资带来透明度

在 R-Factor™ 系统的开发过程中,道富环球的开发团队生成了直方图、散点图、箱线图和其他可视化效果以完善其算法。该系统可帮助投资者作出明智的决策,并提高其环境、社会和治理 (ESG) 评分。

阅读案例

十二张图形成一张直方图,显示 M S C I World 按行业划分的 R-Factor ESG 评分。

直方图按行业显示 R-Factor ESG 评分。

博世开发用于汽车测试数据分析和可视化的一体化平台

博世使用 MATLAB 开发了 ENValyzer(工程测试数据可视化工具和分析器),该工具用于可视化、处理和分析从测量设备、测试平台和车辆采集的测试数据并生成相应的报告。博世工程师能够以单轴、二级、矩阵图和多轴视图呈现数据。

阅读案例

ENValyzer 图,显示相对高差比 (P R) 与 R P M 频谱结果的关系。

ENValyzer 图,显示相对高差比 (PR) 与 RPM 频谱结果的关系。