可視化在整個數據分析過程中至關重要,從最初的探索到重要發現和見解的交流。 我們發現模式,發現潛伏的關係,並進行視覺交流。
對於高維數據(即具有許多列和行的數據表),創建足以匯總數據以揭示總體模式並顯示數據變異性的規模和程度的圖表可能具有挑戰性。 讓我們考慮一些平衡這些需求的方法。
為了說明這一點,我們將查看 2019 年 3 月所有美國國內航班的一些航空公司出發和到達數據。 我的書裡附有數據表使用 JMP 進行實用數據分析,第三版。 完整數據表包含 38 列和超過 632,000 行。 首先,我們考慮到達延誤,以分鐘為單位報告。 在圖形生成器中,我們將到達延遲列到 Y 放置區域並生成默認圖形,即離群值箱線圖。

該圖顯示了延遲的高度右偏分佈,中值接近於零。 也許 50% 的航班提前抵達,75% 的航班僅有輕微延誤。 檢查 5 個數字摘要框可以告訴我們更多信息,人們可能想知道 1,928 分鐘的最大值,或 32 小時的延遲。

離群值箱線圖中的上須線是在 Q3 + 1.5*(四分位數範圍)處構建的,在本例中為 31.5 + 1.5(21) = 37.5。 大量但不確定數量的觀察結果都在 37 分鐘以上。 如果我們使用箭頭工具選擇晶須上方的點,我們會發現有近 54,000 個異常值,但在圖形的初始渲染中,我們看到一條暗線,在較高值處有一些衰減點。
一個更大的問題是,異常值可能會在視覺上使大多數航班在預定時間後幾分鐘內到達的事實相形見絀。 如果我們的首要任務是傳達分佈的中心和形狀,我們可能更喜歡直方圖或小提琴圖。 後者是等值線圖選項。 這是並排的兩個圖表。
這些可視化突出顯示了整個分佈的位置和形狀,而不會過分強調外圍點。 另一方面,它們實際上根本沒有顯示任何數據點。
當然,我們可以通過右鍵單擊圖表並選擇“添加”>“點”,將每個單獨的點添加到任何這些圖中。 這是小提琴圖,其點覆蓋在輪廓上。

問題在於過度繪製太多,以至於大多數點都不可見。 該怎麼辦?
這裡有五個簡單的策略:
1.分而治之。 製作一組小圖表可能不是您的第一選擇,但我們從這個開始,因為它有助於更清楚地說明其他技巧。 如果一維圖中過度繪製,請包含另一個維度。 例如,我們的數據包含一個分類變量,用於識別延遲的主要原因當發生延誤時。 在此數據集中,只有大約三分之一的航班延誤,因此我們看到的是大約 200,000 個點,而不是 600,000 個點。
使用主要原因作為分組變量,有助於識別延遲變化的潛在動態原因,並且還可以更清晰地顯示各個數據值。 例如,很明顯,大多數延誤似乎是由承運商和遲到的設備造成的,最長的延誤可歸因於承運商,而安全延誤很少且短暫。

請注意,在此渲染中,點不再垂直對齊,而是已緊張不安。 也就是說,它們已稍微向左和向右重新定位,以在它們之間留出空白。 這給我們帶來了第二種策略。
2.添加或調整抖動。 在這個單變量圖中,一些點已均勻地向左或向右移動。 默認抖動模式將點分開,以便我們可以了解每個值有多少次航班,但點覆蓋了輪廓。
在圖形生成器中,抖動控件提供了選項。



例如,如果我們選擇隨機正態抖動並減少抖動限制,我們可以再次展示小提琴:
減少抖動可以揭示小提琴,但會增加過度繪製。 接下來的三種策略更直接地處理降低墨水密度。 我們可以通過右鍵單擊黑點來調用這些選項到達延遲在圖表右上角的圖例中。


3.使用開放標記。 選擇標記 >並選擇空心圓而不是實心點。 現在,鄰近點明顯重疊,而不是彼此重疊。

4.使用較小的標記。即使使用開放標記,點的密度也會導致相當多的過度繪製。 有時,簡單地使用較小的點會留下更多的空白,從而使各個點更加明顯。 我們通過右鍵單擊圖例中的黑色圓圈並選擇來完成此操作標記尺寸 > 1,小。

5.使用半透明標記。 開放標記讓我們可以透過點的中心看到,但點的輪廓是不透明的。 為了減少視覺混亂,我們可以使點半透明。 再次右鍵單擊圖例中的黑色圓圈,然後選擇透明度…打開此對話框:

按照指示輸入 0 到 1 之間的值。 以下是針對 20% 標記密度輸入 0.2 的結果。
在此版本中,非常稀疏的最高點幾乎消失得無影無踪,但較低值處的點的豐富性卻得到了強調。
這五種基本策略同樣適用於雙變量和多變量圖。 例如,這裡是使用小的開放標記的到達延遲與出發延遲的散點圖。 為了添加第三個維度,我們根據延遲的主要原因對點進行著色。
我們現在正在繪製所有 612,000 個點,其中大部分都非常接近或低於原點。 左下角的大量黑點是提前或準時到達的航班,因此沒有到達延誤的主要原因。 延誤的相對頻率和嚴重程度是顯而易見的。 更重要的是,儘管數據密度很大,我們仍然可以檢測整體模式以及各個點。