每個散佈圖製作工具的錯誤都從輸入開始:多了一個空白的列、含有單位字串,或絕對值大於 1e12 的資料,只要解析器無法計算,就會悄悄消失。散佈圖製作工具拒絕隱藏被略過的資料——它會在摘要中以三個獨立的數字回報有效點數、無效列數與超出上限的列數,讓遺漏的點永遠不是謎團。因為每個解析決策、座標計算與 SVG 渲染都在當前的瀏覽器分頁中本機執行,你可以編輯標題並在幾秒內重新執行,精確查看哪些列改變了狀態以及為什麼改變。這種可視性正是安全散佈圖工作流程與「一個錯字就能移動整個叢集或抹除一筆實驗讀數」的工作流程之間的差別。這種嚴謹性同樣適用於座標軸:獨立的線性刻度不會假設某個軸包含零,而完全相同的常數欄會以對稱方式展開,讓單一點仍能渲染,而不是產生除以零的錯誤。本文其餘部分將逐步說明精確的輸入規則、座標軸標籤、列數意義與匯出邊界,讓你在下載圖表之前就能避免每一個可預防的錯誤。

how do i avoid mistakes when i make scatter plot when using scatter plot maker
使用散佈圖製作工具時如何避免錯誤

為什麼散佈圖的錯誤會躲過大多數工具

大多數線上散佈圖工具以三種可預測的方式失敗:含有多餘逗號的列、解析器拒絕的科學記號,或讀取器誤以為是數字的單位文字。每一種情況都會變成一筆永遠到不了預覽的列。因為預覽每次都從單一 SVG 字串重新生成,在第 50 列的靜默截斷與在第 200 列的刻意上限看起來一模一樣。散佈圖製作工具透過明確計算每一項來避免這種混淆。無法通過嚴格數值檢查的無效列會被列入它們自己的分類,而落在 200 列邊界之外的超出上限列會被列入另一個分類。不會有任何東西混入一個籠統的「略過」總數,無效列也不會被悄悄改寫成座標軸原點上的零點,混入有效點之間。

那個計數過程完全在你的機器上執行。解析、座標計算、座標軸展開與 SVG 建立都在當前的瀏覽器分頁中執行,因此修改一列並重新生成圖表是你唯一需要的回饋迴圈。本機處理也能確保你的資料隱私:在你反覆嘗試的過程中,沒有任何數值、標頭或標題會被傳送到伺服器。

防止靜默失敗的輸入格式規則

解析器只接受一種嚴格的格式:一行非空白的內容,內含正好兩個以逗號分隔的有限數字。帶正負號的值、小數、零與科學記號皆可接受。其他所有內容都會被拒絕並計入無效。遭拒的類別包括空白的元件、多餘的逗號、單位文字(例如「5 kg」或「10 cm」)、十六進位字面值、NaN、Infinity,以及絕對值大於 1e12(絕對值大於一兆)的數值。空白列會被忽略,而不是計入無效。負零會被正規化為零,因此不會在摘要中以獨立的列出現。

如果某列未通過任何一項檢查,它不會變成座標軸原點上的零點,也不會悄悄消失。它會被計入摘要區塊的無效總數。這是最重要、必須避免的單一錯誤:從含有標頭、合併儲存格或單位後綴的試算表貼上資料,然後在沒有閱讀計數的情況下就相信結果。

輸入錯誤範例列回報為
單位後綴5 kg, 3無效列
多餘的逗號1, 2, 3無效列
空白的元件5,無效列
絕對值大於 1e125e13, 2無效列
超出 200 列邊界的列250 列貼上中的第 201 列超出上限的列
空白行(空白)忽略

逐步使用散佈圖製作工具避免錯誤

每次貼上資料集時都執行同樣的六個動作,讓摘要區塊、預覽與下載的 SVG 都反映同一組點。

  1. 新增選用的標題。標題方塊接受純文字;XML 不允許的符號(例如 & 符號、角括號、引號與單引號)會被轉義為實體,因此請讓標題簡短且有意義,讓閱讀座標圖的人能立即理解這項實驗。
  2. 準備列資料。在貼上之前先移除標頭、單位後綴與千分位分隔符,並將 Tab 替換為逗號,讓每個非空白列正好包含兩個數值 token。
  3. 生成圖表並閱讀摘要。摘要永遠會回報三個獨立的計數:有效點數、無效列數與超出上限的列數,即使其中一個分類為零也會一併顯示。請相信摘要,而不是預覽表面上呈現的密度。
  4. 檢查每個座標軸上的五個參考標籤。最小的 x 對應到左邊界,最大的 x 對應到右邊界,介於兩者之間的值則依其數值距離按比例配置。對 y 軸重複同樣的垂直讀法。
  5. 檢查是否為常數軸。如果每個 x 或每個 y 都相同,工具會以對稱方式展開該軸(絕對常數的百分之十,或一個單位,以較大者為準),讓點置中顯示,而不是塌縮成一條除以零的線。
  6. 下載 SVG。下載使用的百分比編碼 SVG data URI 與頁面上的預覽相同,因此匯出的檔案就是你看到的內容。編輯輸入會清除該 URI 並停用舊的下載。

不混淆地解讀三個列計數

摘要區塊絕不會合併無效列與超出上限的列,也不會在某個分類為空時丟棄第三個計數。例如,如果你貼上 250 列非空白內容,解析器會檢查前 200 列,並將剩下的 50 列回報為超出上限,而不是無效。算術很簡單:250 − 200 = 50。超出上限的列是刻意未被解析,因此它們保留在自己的分類裡,絕不會污染無效總數。反過來說,如果這前 200 列中有 30 列含有雜散的單位字串,只有 170 列是乾淨的數值配對,摘要就會顯示 170 個有效、30 個無效、50 個超出上限——總共 250 列,沒有任何隱藏的遺漏。摘要中任何被回報為無效的列,都應該在原始資料中修正後重新貼上。

50,000 個 UTF-16 程式碼單位的輸入上限在列解析之前就會生效,因此單一非常長的列可能會減少能容納的列數。如果你的貼上內容觸發了該上限,請縮短標題或將列拆分到第二次執行。這個檢查與 200 列邊界互相獨立,兩個上限都會以各自的數字顯示在摘要中,因此不會有任何遺漏被悄悄吸收。

座標軸範圍陷阱與常數值邊界情況

大多數座標軸的錯誤來自假設散佈圖包含原點。兩個座標軸都使用獨立的線性刻度,從資料中的最小值開始,到最大值為止。只有當零出現在資料中時,零才會出現。這是刻意的設計,讓小幅度的模式得以保持可見,但這也意味著兩個 y 值相近但 x 值差距很大的點,即使數值差距真實存在,看起來也可能幾乎是平的。在詮釋表面上呈現的分散程度之前,請先讀取每個座標軸上的五個參考標籤;顯示範圍越寬,同樣的數值差距看起來的叢集就越小。若想更仔細地觀察水平間距,請參閱散佈圖製作工具中的 x 位置指南。

常數值邊界情況是第二個座標軸陷阱。如果每個 x 都是 3.5,x 的定義域就會是 3.5 到 3.5,除以零會產生無效的座標。相對地,工具會以對稱方式將 x 範圍展開到約略 2.5 到 4.5,並把每個點在該軸上置中。常數 y 也適用相同的規則。因此,單一有效點會在兩個座標軸的中心渲染,而不是讓整個執行失敗。展開的規則是確定性的——絕對常數的百分之十或一個單位,以較大者為準——因此對相同資料重複執行會產生相同的圖表。

工具的極限:統計聲明與密集資料

這個圖表是向量視覺化,而不是統計輸出。散佈圖製作工具不會計算相關係數、迴歸、趨勢線、信賴區間、誤差棒、密度、叢集或顯著性。SVG 中的座標會四捨五入到小數點後三位,座標軸標籤則對非常大或非常小的值使用實用的有效位數或科學記號。如需更完整的說明,了解此工具有計算與不計算哪些項目,請參閱散佈圖製作工具是否計算相關係數或迴歸。

自動計算不計算(請使用專用套件)
依資料最小值與最大值產生的獨立線性座標軸範圍相關係數、迴歸或趨勢線
常數軸的對稱展開信賴區間或誤差棒
嚴格的三項獨立列驗證計數對數刻度或類別刻度
獨立的 800 乘 500 SVG,含文字環繞圓形標籤密度、叢集或顯著性檢定

重疊的點會互相遮蔽,特別是在完全相同的配對重複出現時,因此密集資料集並不適合這個預覽。匯出的 SVG 遵循 W3C SVG 2 規格,這表示在調整檔案大小時,線條、文字與圓形都能保持清晰。每個圓形也帶有一個文字 title,內含精確格式化的 x 與 y 值,供支援 SVG 的檢視器使用,因此你可以縮放或在任何向量編輯器中開啟檔案,直接讀取底層的數字——這是事後檢查轉錄錯誤的有用最後一道關卡。若想進一步了解 SVG 的構成要素,請參閱 MDN SVG 教學,其中涵蓋了此處使用的相同基本元件。若需要可發布的樣式、可存取的標籤、對數刻度、類別色彩或正式的統計分析,請保留原始資料集並使用完整的繪圖套件。