<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />《華爾街日報》最近發表了一篇精彩的互動圖文,名為“ 20 世紀對抗傳染病:疫苗的影響」其中包含一系列圖表,顯示按州和年份劃分的選定傳染病的發生率。 這是治療麻疹的。

我的第一印像是,“哇,看起來這個國家有麻疹,疫苗把它清除了。” 在視覺化應該傳達一個觀點的程度上,這個視覺化成功地展示了疫苗的廣泛影響。 然而,我越看越覺得有幾個細節讓我困擾。
- 需要很多細節來表達一個觀點(數據/墨水比率不佳)。
- 彩虹般的配色方案使得很難快速比較數值。 也就是說,藍色、綠色和黃色沒有感知順序。
- 顏色漸層達到 4000,但數據僅達 3000。
- 一半的州名缺失。
- 各州按郵遞區號排序,但顯示標準縮寫,這就是為什麼阿拉斯加位於阿拉巴馬州之前。
- 該數據截止於 2002 年,當時的疫苗接種率出現上升,成為新聞的首要內容。
羅伯特·艾利森,“如何讓傳染病看起來更好,”和安迪·柯克,”是我們喜歡的視覺化還是數據,”如果您想閱讀更多內容,我們也對視覺化進行了批判性的審視。 我對獲取數據更感興趣,並嘗試在 JMP 中以其他方式視覺化數據。
取得數據
我從以下位置下載了 CSV 文件第谷計劃,這比我想要的更麻煩。 每個州的數據都位於兩個單獨的文件中,並且該網站需要登錄,因此我無法輕鬆編寫下載腳本。 102次手動下載後我得到了原始資料檔。
拿到數據後,我遇到了兩個驚喜:
- 數據是每周而不是每年。
- 整個過程中都缺少數據——不僅僅是《華爾街日報》圖表所示的地方。
我喜歡製作一些隨機數字圖表以確保數據看起來合理。 這是每週的發病率之一。 儘管我降低了透明度,但仍然不足以表明大部分數據低於每 10 萬人每週 10 例。 不過,您可以看到異常值,我標記了其中一些。 我對這個主題不太了解,無法知道這些異常值是否真實。

處理缺失資料
在開始製作真實的圖表之前,我需要一個處理遺失資料的計劃。 WSJ 圖表本質上將所有缺失值視為 0,除非整年都缺失——然後它們將年份顯示為略有不同的顏色(白色而不是淺藍色)。 我決定採取一種不同但仍然人為的方法。 我認為早年缺少的數據很可能是未知的,但在後來的幾年裡,數據似乎更有可能實際上是0,只是沒有報告,因為這種疾病非常罕見。 因此,我將缺失值保留到某一年(1975 年),並在該日期之後將缺失值視為 0。 這至少可以避免圖表右側的斑點。
再現原作
在深入探索之前,我決定嘗試重現 WSJ 圖表,就像在 JMP 中一樣。 我不得不
- 將數據總結為年份
- 將數據與另一個州縮寫數據表連接起來
- 建立自訂顏色主題
- 在圖形生成器中建立熱圖
- 新增疫苗接種日期的參考線

結果非常接近。 州的排序略有不同,因為我沒有費心按郵政編碼而不是顯示的縮寫對州進行排序,顏色略有不同只是因為我沒有仔細複製顏色,當然,丟失的數據處理會改變一些丟失的數據年到0。
重新建立顏色主題後,我可以看到其中的一些邏輯。 彩虹顏色主題通常不利於連續值,因為不同的色調會被明確地感知,而不是連續地感知。 《華爾街日報》的配色本質上是三種不同的方案:
- 「高」水平的連續黃-橙-紅方案
- 純綠色表示「中等」水平
- “低”水平的連續白藍方案
我認為綠色是最困擾我的感知的,所以我想我會在沒有綠色的情況下嘗試同樣的想法。

我們仍然必須選擇一些任意的截止值,但我更喜歡沒有綠色,因為它們需要整理的類別較少。 這種顏色還將範圍限制為 3000。
改變顏色
真正連續的顏色主題怎麼樣? 羅伯特·艾利森使用了白到紅的方案,似乎很合理。 單一連續範圍的問題在於數據是傾斜的,因此線性顏色應用程式只會突出顯示刻度一端的差異。 我們可以透過使用分段線性比例並自訂顏色主題來解決這個問題。

奇怪的是,鑑於顏色範圍的減少,1945 年全國範圍內的下降更容易看到。
我們還可以嘗試按平均發生率而不是按字母順序對各州進行排序。 這使得我們更容易看出各州並沒有像看起來那樣受到一致影響。

到目前為止,我一直在展示每年的發病率,就像《華爾街日報》的原文一樣。 然而,考慮到缺失資料的數量,像艾莉森一樣顯示每週平均值是有意義的,這樣我們只對我們擁有的資料進行平均。 顯示年利率就像將缺失週的值視為 0。 這是每週費率的同一張圖表。

差異是微妙的。 一個例子是 1934 年的喬治亞州,那裡只有 27 週有數據,而且這些週的值相當高。 在最初的版本中,1934 年的喬治亞州看起來只是平均水平,因為它被所有引入的零沖淡了,但在這裡它看起來很高。 事實可能介於兩者之間——缺失值不太可能是 0 或與非缺失值相同。
嚴格的「缺失即缺失」方法並非沒有缺陷。 為了進行比較,這裡是艾莉森的版本,顯示了每週平均值。 請注意 1997 年佛蒙特州麻疹病例明顯激增。 這實際上只是一周的數據。 所有其他週的數據均遺失。 所以看起來這是糟糕的一年,但也許這只是糟糕的一周。

我不知道解決可變數量的丟失資料的最佳方法。 當資料遺失時,我嘗試讓方塊縮小。 這是更真實的表示,但我不確定額外的複雜性是否值得。 此外,大多數時候你幾乎無法辨別尺寸差異。

探索其他觀點
我最初的想法是隨著時間的推移製作一個全國範圍的長條圖。 事實證明,這比我想像的要複雜,因為我需要每年的人口值才能正確地總結各州的發病率。 原始數據僅包括每 10 萬人的計數和比率。 我想我可以根據計數除以比率來估計州人口(方法 1),但當比率為 0 或非常小時,這種方法會失敗。 我的另一種方法(方法 2)是根據我發現的一些歷史人口值進行插值。 在嘗試了兩者之後,我將它們與情節進行了比較:

10(百萬)處的水平線來自計數為 1、比率為 0.01 的年份。 費率僅提供至小數點後兩位。 類似的問題導致了 70 的異常值:德克薩斯州當年有幾週的計數為 1,比率為 0.00。 我最終使用了一個混合兩個估計值的公式,但僅考慮計算出的比率,那麼比率並不是很小。
這是全國發病率條形圖,它很好地表達了原始點,並且更容易看到逐年變化,包括安靜的 1945 年。

我不喜歡尖銳的線圖,但這裡是為下一張圖提供上下文的線圖。 每行都是一個狀態。

我更喜歡光滑者帶來的「少即是多」的哲學。 在這種情況下,您會失去範圍,但您可以更好地了解整體趨勢和一些異常狀態。

結束語
在這項研究中,我本著以下精神分享了我所採取的所有處理和繪圖步驟的腳本可重複的研究。 擁有腳本還可以輕鬆嘗試不同的缺失值策略。 附加的 ZIP 檔案包含來源 CSV 檔案(僅值入場費)以及我的 JSL 腳本和最終的 JMP 資料表,該資料表本身包含圖形腳本。 執行名為「Measles Study」的腳本來重新建立檔案。 您可以更改“之後缺失為零「可以更改為 1975 年以外的其他年份,以嘗試不同的缺失值截止值,或者根本沒有截止值。
儘管到目前為止需要做一些工作,但我認為為了更好的分析還需要做更多的工作。 例如,案例存在季節性模式,可用於估算某些缺失值。 尋找狀態集群或爆發模式可能會很有趣。 從視覺上看,範圍帶可能比線條更好。 我想探討安迪柯克(Andy Kirk)的想法,即在數據上嘗試配色方案,而不會出現如此急劇的下降。 使用2002年以後的國家數據怎麼樣? ……
然而,我必須在某個地方停下來。 此外,附上所有數據,也許親愛的讀者會繼續探索。