DAVI Visual Encoding
Visual Encoding
why talk about visual encoding
Need to parametrize a preset chart
-> e.g., which color scale to use
Need to adjust a base chart
-> e.g., to counter a perceptual bias
Need to build your own chart type
-> e.g., to tailor it to a dataset
Need to detect when someone tries to deceive you with a chart
-> Visual Literacy
Marks & Channels
标记(Marks):指的是我们用来表示数据的基本图形,比如点、线、柱等。教授提到了一些可视化设计中的关键问题,例如:
- 位置:标记在绘图区域中的放置位置。
- 颜色:如何为标记上色。
- 角度:标记的倾斜角度。
- 形状:标记的形状是什么样的。
- 大小:标记的长度、面积或体积,取决于数据的维度。
通道(Channels):是指我们用来区分或强调标记的数据特征,教授强调这些概念来自制图学。简单来说,就是我们用来“显示”数据的各种方法。每种方法通过不同的方式让你看到数据,从而帮助你理解信息。
data type
定性数据(Qualitative Data):
定义: 定性数据是用非数值的类别或特征来描述的,通常用于分类或标识不同的属性。
特点:
- 不能直接进行数学运算。
- 用于描述事物的类别、质量或属性。
- 通常通过标签、名称、颜色、状态等方式表现。
- 分类数据(Categorical Data):
- 定义:没有内在的顺序,只能匹配类别。
- 示例:眼睛颜色(棕色或蓝色),这些颜色之间没有优劣之分,仅仅是不同的类别。
- 有序数据(Ordinal Data):
- 定义:可以按顺序排列的类别数据,但无法量化差异的大小。
- 示例:年龄段(婴儿、儿童、青少年、年轻成人、老年人),这些类别可以排序,但没有明确的数量差异。
定量数据(Quantitative Data):
定义: 定量数据是用数值来描述的,可以通过数学运算进行量化和分析。
特点:
- 可以进行加减乘除等数学运算。
- 数据可以表示为数值,并且通常有一个量的单位(如米、秒、公斤等)。
- 用于度量事物的数量、大小或范围。
- 离散数据(Discrete Data):
- 定义:可以匹配、排序并形成差异,但无法进行插值(即无法在数据点之间插入新的数据点)。
- 示例:学校年级(一年级、二年级等),可以计算年级之间的差异,但不能计算一个不存在的“1.5年级”。
- 连续数据(Continuous Data):
- 定义:可以匹配、排序、计算差异并进行插值。
- 示例:身高,能够计算身高的差异并在不同身高之间插值。
Mapping criterion 1: expressiveness
- categorical data: 只能匹配
- ordinal data: 能看见差异,但这种差异只够排序
- discrete data: 可以匹配、排序并形成差异,但是无法插入新的值在每个数据点之间。 1个点和2个点之间,不能插入1.5个点。
- 可以匹配、排序、计算差异并进行插值。
PRECEDENCE AMONG VISUAL SIGNALS(视觉信号的优先顺序)
如果要建立3d模型,高度建议尝试混合2.5D模型
human eye
亮度与颜色感知的差异:
- 由于视杆细胞的数量远超视锥细胞,且视杆细胞分布广泛,这解释了为何人类对亮度变化的感知通常比对颜色变化的感知更为敏锐和迅速。
实际应用:
- 红色信号:红色通常作为信号色,因为它在视网膜上的感知较为显著。
- 老年人视力问题:蓝色视觉感知随着年龄的增长会衰退,因此在老年人住所中,建议避免使用蓝色作为指示标志的颜色。
Mapping criterion 2: effectiveness
视觉通道的重要性
视觉通道的层级:
- 位置始终是最强的视觉通道,这解释了为什么散点图在展示两个属性时表现优异。
- 其他视觉通道(如颜色、形状、亮度)的有效性取决于数据类型。例如,颜色在展示定量数据时通常优于形状。
图表和视觉通道的应用:
MACKINLAY’S SCHEMA(precedence related with channel)
Mapping Criterion 3: Appropriateness (Book: Efficiency)
A visualization is appropriate if it balances the tradeoff between efforts required for creating it and the benefits yielded by it
summary: eea in marks and channels
expressiveness,表现力指的是一个可视化作品是否能够准确地编码并传达预期的所有数据关系,而不引入其他不相关的数据关系。
- Effectiveness, 如果可视化能最好地利用输出媒介和人类视觉系统的能力(并支持任务),那么它就是有效的。
- Appropriateness(效率) 如果创建可视化所需的努力与可视化所产生的效益之间能够取得平衡,那么这种可视化就是合适的。
Marks: dimensionality
遮挡(Occlusion):
- 在3D可视化中,一个数据项可能会被另一个数据项遮挡。由于视角限制,静态图片无法展示所有细节,用户需要互动(如旋转或缩放)来查看被遮挡的信息。
透视失真(Perspective Distortion):
- 3D图形中的透视失真会导致前景的对象看起来比远处的对象更大。这种失真可能会误导观众,比如苹果公司在演示中使用的3D饼图就有这种问题,导致误解数据的真实比例。
非锚定点(Non-Anchored Points):
- 在3D散点图中,点的深度信息缺失,使得无法判断点的实际位置和密度。例如,不能确定某个点云是靠近用户的密集区域,还是远离用户的宽散区域。
迷失方向(Lost in Space Syndrome):
- 导航3D可视化时,用户可能会迷失方向,难以判断上下左右以及当前视图。这种情况下,可以通过引入虚拟地平线来帮助用户保持方向感。
选择困难(Selection Issues):
- 在3D点云中选择感兴趣的部分(如中间的黄色点)可能很困难,因为这些点可能被前面的蓝色点遮挡。虽然可以使用深度学习技术来改进选择,但这通常比2D中的简单矩形选择复杂得多。
what is color?
color = Hue + Saturation + lightness
- Hue = Wavelength
- Saturation = Intensity from gray to pure, vivid color
- Lightness = Brightness from black to colorful to white
Luminance = visual perceived brightness(Color temperature)
- luminance 是基于物理测量,受光源和反射特性的影响,独立于观看者的主观感受。
- brightness 是主观的,因人而异,依赖于眼睛和大脑的处理结果,而不仅仅是物理光线的强度。受对比度、环境光、观察者的视敏度等多种因素的影响。
- lightness 是一种感知特性,通常基于人眼对颜色的主观感受。它通常表示为 0(黑色)到 100(白色)的值,反映了人对物体或图像的亮度感知。
high contrast graphics
计算差值要大于3.1
计算公式:https://www.w3.org/TR/WCAG20-TECHS/G18.html#G18-tests
equidistant color scale(等距色差)
但并不是所有等距的都会导致颜色发生改变
color blind
网站上测试
multi-hue vs. single-hue
下面的图,luminance的值更加丰富有更多选择,但也看具体的应用场景。例如读书,需要scatterplot,这样更能清晰的体现。
diverging color map
标志是中间有一个neutral point, 最经典的示例是用于温度图中与机器运作图中,你希望看到机器运行的最佳点。
neutral point 不一定要是0, 应该是一个threshold你想要去保持的
is possible to have a diverging mult-hue color scale
但这会造成color-blind-unsafe的情况
tip:a good website for choosing color
https://colorbrewer2.org/
label types for direct labeling
plain label
- good attribution
- simple placement
- high likelihood of occlusion in dense areas(密集区域发生阻塞的可能性很高)
circular label
- good attribution
- hampered readability
- problematic for longer labels(因为过长字符会拐弯)
- connecting link adds to visual complexity (especially in the presence of edges)
- can alleviate occlusion to some degree
particle-based label(how to place labels)
(stage 1:) 首先尝试能否找出plain label的摆放形式
从以下三种方式里选一个
1.最常用
2.当有遮挡
3.当数据量过大,label会向点四周平滑
(stage 2:) 其次尝试能否找出excentric label
label旋转,直到找出合适的位置,然后抛出leader line与目标点链接
Rendering
sketchy picture风格的是为了stakeholder,因为与你合作的人可能不是IT人员
advanced colors
HSL definition
HSL = Hue + Saturation + Light ness
它给予了和艺术家一样的工作的流程
designer’s view
- tone: 是艺术家在颜色中添加灰色。
- tint: 是艺术家将颜色添加到白色以创建更浅的颜色。
- shade: 是艺术家将黑色添加到颜色以使其变暗。
HCL
work with perceptual angle
HCL = Hue + chroma + luminance
chroma just a different word for saturated.
COLOR CODING -> FOCUS ON THE DATA
–(EXPRESSIVENESS)
Histogram Equalization Color Coding(要计算)
直方图均衡化(Histogram Equalization)是一种增强图像对比度(Image Contrast)的方法,其主要思想是将一副图像的灰度直方图分布通过累积分布函数变成近似均匀分布(直观上在某个灰阶范围内像素值保持一致 ),从而增强图像的对比度。为了将原图像的亮度范围进行扩展, 需要一个映射函数, 将原图像的像素值均衡映射到新直方图中。
- 首先,你会计算出直方图和累计直方图,确定每个区间对应的像素比例。
- 然后,将0%-10%(最暗的像素)分配给颜色编码中的一个颜色区间,例如蓝色。
- 接着,将10%-20%的像素强度分配给另一个颜色区间,比如绿色,依次类推。
eg. 更改前后
bivariate color scales(two attribute)
图要怎么看:
也可以有多个属性
但是,三个属性在一张图上集中显示是一个很差的决定
优秀的颜色选择网站
https://www.joshuastevens.net/cartography/make-a-bivariate-choropleth-map/
–(EFFECTIVENESS)
Task-driven color codings
“Task-driven color codings” 是指根据任务的不同状态、类型或优先级使用颜色进行编码或标记的一种方式。这种颜色编码系统通常用于帮助用户快速识别任务的状态或类别,提升效率和可视化管理。
识别任务属性(Identification):用颜色帮助用户识别任务的类型、状态或优先级。
任务定位或本地化(Localization):用颜色标示任务在地理空间或系统结构中的位置或归属。
TWO-TONE PSEUDO COLORS
斜线色彩条通常用于连续数据(如温度、密度等)的可视化,因为它可以增强从低到高、从一种状态过渡到另一种状态的流动感。这种渐变的视觉效果有助于传达数据的连续性,而不是离散性。
semantic color coding
语义色彩编码是指根据所展示信息的语义,使用颜色来表示特定的含义或类别。这种方法利用颜色来传达信息或区分不同类型的数据,使用户更容易解释和理解内容。反应时间更快。
当去除紫色后变得更加好了
TA Session: “Introduction to Visualization Critiquing”
type of a bad visualization
- ugly—A figure that has aesthetic problems but otherwise is clear and informative.
- bad—A figure that has problems related to perception; it may be unclear, confusing, overly complicated, or deceiving.
- wrong—A figure that has problems related to mathematics; it is objectively incorrect.
ugly visualization
ugly doesnt mean this is wrong, maybe it is more effective to implant some conception to one’s mind.
或者只是单纯的审美有问题
bad visualization to mislead
cut the y axis.
Y轴切割的问题:
- 在条形图中不建议切割Y轴,因为这可能导致数据解释上的误导。
表示切割的常见做法:
- 如果必须切割Y轴,通常会用特定的符号(如波浪线)来表示。
- 也可以在切割处引入间隔,或者使用宽间隔将图表分成两个部分,以更明显地显示Y轴切割。
设计意图:
- 设计者可能会采取这些措施来使Y轴切割尽可能明显,提醒观众注意这一点,减少误解。
教授的观点:
- 教授承认Y轴切割是一种不推荐的做法,但在某些情况下可能仍会使用。他尝试通过明确的标记和设计来弥补这一不推荐做法的潜在问题。
cumulative revenue
never go negative
average female height
两处欺骗点:
- 起点不是0
- 使用了pictogram, 且柱状图人的大小不一样
Metric: lie factor - defintion(测定真实值,定量欺骗值)
be used to evaluate how accurately a graphic represents the underlying data.
The formula compares the visual change presented in a graphic to the actual change in the data.
Here’s a breakdown of your example1:
Lie Factors below 0.95 or above 1.05 are signs of substantial distortion.
example2:
same data->different charts
anchoring effect
先前接触的信息会影响后续的判断
锚定效应:这是一个认知偏差,指的是人们在接收到信息时,先前看到的东西会影响他们对后续信息的理解和判断。换句话说,先看到的内容会”锚定”或影响对后续内容的解释。
实验的设计:
- 研究参与者被分成两组,要求他们判断红色和蓝色数据簇(cluster)之间的分离度。
- 第一组在做出判断之前先看了一幅显示高簇分离度的图片(簇之间距离很大)。
- 第二组则在做出判断之前看了一幅显示低簇分离度的图片(簇之间距离很小)。
same chart -> different interpretation
面积图(Area Chart)和折线图(Line Chart)都可以展示数据的波动和变化。但如果不希望影响读者,建议选择折线图,因为它能更直接地展示趋势而不会引发歧义。
举例说明:奥巴马时期的失业率:
- 民主党支持者的视角:从图表中看到失业率下降,他们会认为这是奥巴马的成功,认为他显著降低了失业率,为国家做了贡献。
共和党支持者的视角:他们会关注奥巴马未能把失业率控制在他承诺的8%以下,并认为那些高于8%的失业人口是奥巴马的失败,应该对其进行批评。
CRITIQUING VIS USING THE 3ES
3ES
Expressive
- Does the visualization show the data that it is intended to show?
- Does the visualization show something else?
Effective
- From a cognitive perspective, does the visualization use suitable mappings of the data? (-> Mackinley’s chart)
- From an analytic perspective, does the visualization support the intended task?
Appropriate/Efficient
- Is making and reading the visualization worth the effort? (-> automobile for the mind
表达性:着重于确保数据的完整和精确表达。
- 展示的是预期数据吗?
- 可视化应准确地表达数据,而不扭曲数据所要表达的内容。这包括确保数据映射在逻辑上保持一致(图的类型,颜色、形状、尺寸等 <- 从数据映射层面出发)
- 使用颜色、形状和布局在这里主要是为了确保数据的真实性和完整性被保持。比如使用不同的颜色来区分不同的数据类别,或者用形状来表示不同的数据类型。
- 表达性强调的是视觉元素应该如何正确地反映数据的结构和内容,避免引入任何可能误导解读的元素。
- 可视化应准确地表达数据,而不扭曲数据所要表达的内容。这包括确保数据映射在逻辑上保持一致(图的类型,颜色、形状、尺寸等 <- 从数据映射层面出发)
- 有误导吗?
- 可视化不引入可能暗示数据不存在的元素。
有效性:视觉元素如何帮助用户理解和分析数据
- 符合认知清晰度吗?
- 这关系到可视化是否正确使用了人类视觉系统的能力。颜色、形状和布局的使用应使数据一目了然。Mackinlay 的可视化排序理论可以帮助确定所选择的可视化形式是否最适合数据类型。
- 在这里,颜色、形状和布局的使用是为了提高信息的可读性和易懂性,比如通过颜色的对比来突出显示数据中的趋势或异常。
- 有效性关注的是如何通过视觉手段最大化数据的解读效率和准确性,帮助用户完成特定的分析任务。
- 分析实用性
- 可视化应支持用户的特定任务或目标,无论是发现趋势、进行比较还是跟踪一段时间内的增长情况。与其他数据展示形式相比,它应能让用户更有效地做出决策或结论。
合适/高效:
- 值得花时间制作和阅读吗?
- (易用且高效)。
真实评价一张图
表达性(Expressiveness):
- 图表是否仅展示了真实数据?教授指出该图表存在不同区间大小的问题,导致数据被误导性地表示。此外,使用的颜色编码也没有正确反映数据类型。
- 数据类型是有序的(Ordinal),但他们用了颜色来表现,这更适合分类数据(Categorical)。这导致数据的顺序无法准确呈现,属于错误的编码方式。
有效性(Effectiveness):
- 讨论了色盲问题,尤其是红色和绿色的对比不适合色盲者。此外,颜色的选择缺乏语义化,比如红色可能会被误解为坏数据,但实际上可能只是分数高低的问题。
- 使用的颜色亮度和色调没有表现出数据的层次关系,进一步影响了图表的有效性。
高效性(Efficiency):
- 这类图表很容易创建和阅读,特别适合《辛普森一家》的粉丝。但如果要分析数据趋势,如整体评分是否上升,这种热图并不直观。虽然它看起来好看,但其他类型的图表(如趋势线)可能能提供更多的洞察。
ordinal data的正确呈现
如果数据是有序的(Ordinal),应该选择能够体现顺序和层次关系的可视化方式。常见的方式包括:
- 色调深浅(Luminance Scale):
- 使用颜色的亮度变化来表示数据的顺序。颜色从浅到深可以直观地展示数据的渐变顺序。例如,从浅灰色到深灰色,代表从低到高的有序数据。
- 连续色谱(Continuous Color Spectrum):
- 使用连续的色谱(如从浅蓝到深蓝)来展示数据的递增或递减。这样可以清晰地表现出数据的顺序性和区间差异。
- 条形图(Bar Chart):
- 使用条形图展示有序数据,条形的高度或长度直接体现了数值的大小和顺序。条形的排列方式应遵循从小到大的顺序,方便比较。
- 点图(Dot Plot):
- 点图也可以用来展示有序数据。数据点的排列顺序可以直观地表现出数据的高低和排序。
- 散点图中的大小变化(Size Variations in Scatter Plots):
- 对于有序数据,可以用图形大小来表示顺序。比如,数据点的大小可以随着数值的增加而变大,从而直观地反映数据的层次。
总之,对于有序数据(Ordinal),关键在于使用能表现顺序和渐变的视觉变量,如亮度、大小、长度等,而非使用分类数据常用的截然不同的颜色。