一家工廠有三十臺壓縮機(jī),每臺都接了溫度、壓力、振動三個測點。三個月下來,積累了上千萬條數(shù)據(jù)。當(dāng)工藝主任想看”這些壓縮機(jī)在哪個工況區(qū)間運行得最多”時,他發(fā)現(xiàn)所有監(jiān)控面板上只有折線圖和柱狀圖——它們能告訴他某天下午的溫度峰值,卻回答不了”數(shù)據(jù)整體是怎么分布的”。
這不是折線圖的問題,而是不同圖表類型有各自擅長回答的問題。TDengine IDMP v1.0.19 起在可視化面板中支持熱力圖(Heatmap),讓工業(yè)數(shù)據(jù)分析多了一種組織信息的維度:把兩個屬性各自分桶,統(tǒng)計落在每對桶區(qū)間里的樣本數(shù)量,用顏色深淺呈現(xiàn)密度分布,讓設(shè)備運行真相浮現(xiàn)。
一、不同的圖表回答不同的問題
工業(yè)監(jiān)控中最常見的圖表類型,各自有明確的適用邊界:
折線圖擅長回答”趨勢”——溫度在上升還是下降。柱狀圖擅長回答”比較”——A 泵和 B 泵這個月的總能耗差多少。散點圖擅長回答”關(guān)系”——轉(zhuǎn)速升高時振動是不是也在變大。
這些圖表的共同點是:它們都在按時間維度組織數(shù)據(jù)。折線圖是”值隨時間變化”,柱狀圖是”按時間段匯總”,散點圖雖然兩個軸都可以是屬性,但每個點還是一個時刻的采樣。
熱力圖換了一種組織方式:把兩個屬性維度同時展開,看數(shù)據(jù)在二維空間里的密度分布。 它不關(guān)心某個時刻發(fā)生了什么,它關(guān)心所有的歷史數(shù)據(jù)點在兩個屬性的交叉空間中是怎么聚集的。
舉個例子。一臺變速設(shè)備,轉(zhuǎn)速在 300-1200 之間變化,載荷在 20-100% 之間波動。三個月運行下來,你想要回答:”它在哪個轉(zhuǎn)速-載荷組合區(qū)間運行的時間最長?”這個問題用折線圖是無解的——轉(zhuǎn)速和載荷各是一條隨時間變化的線,兩條線在時間上的關(guān)系可以大致感知,但它們在整個歷史中的聯(lián)合分布,折線圖表達(dá)不了。柱狀圖也無能為力——兩個連續(xù)變量交叉產(chǎn)生的區(qū)間數(shù)量太多,不可能用一組柱子表達(dá)清楚。
熱力圖的處理方式是把轉(zhuǎn)速分成若干個桶(比如每 100 轉(zhuǎn)一個桶),把載荷也分成若干個桶(每 10% 一個桶),統(tǒng)計每個交叉格子里落入了多少個數(shù)據(jù)樣本,然后用顏色深淺標(biāo)記出來。顏色最深的格子,就是設(shè)備運行時間最長的工況區(qū)間。整個過程就是一個二維分桶統(tǒng)計,沒有任何復(fù)雜算法,但它呈現(xiàn)的信息——”數(shù)據(jù)在二維空間中如何分布”——是前面幾種圖表都做不到的。
二、熱力圖怎么用
在 IDMP 中使用熱力圖,配置步驟很簡單:X 軸選一個屬性,Y 軸選另一個屬性,設(shè)定每個軸的分桶大小,選擇配色方案,加載數(shù)據(jù)即可。
兩個軸都可以自由選擇元素的任意屬性——轉(zhuǎn)速、溫度、壓力、振動、電流,也可以是時間維度。沒有誰必須是橫軸的限制,任意兩個屬性的交叉分析都支持。
分桶大小決定了熱力圖的分辨率。比如橫軸(轉(zhuǎn)速)每 100 轉(zhuǎn)一個桶,得到的是粗粒度的分布輪廓;每 20 轉(zhuǎn)一個桶,能看到更細(xì)的結(jié)構(gòu),但格子多了,對數(shù)據(jù)量的要求也更高。桶的粗細(xì)沒有絕對標(biāo)準(zhǔn),取決于分析目的——如果想看大致的工況集中區(qū),粗桶夠用;如果想定位某個共振轉(zhuǎn)速區(qū)間,需要細(xì)桶。分桶方式也有兩種選擇:按固定寬度分(每個桶覆蓋相同的數(shù)值范圍),或者按固定數(shù)量分(將整個數(shù)值范圍等分為指定數(shù)量的桶),后者適合快速控制熱力圖的整體密度。
配色方面,IDMP 支持多種深淺色系,從單色漸變到多色漸變都可以選。深色代表該格子內(nèi)樣本數(shù)量多,淺色代表樣本少甚至為零。

有幾個使用上的建議值得提一下:
熱力圖和趨勢圖是互補(bǔ)的,不是替代關(guān)系。 熱力圖擅長發(fā)現(xiàn)分布模式和異常聚集,但看不出變化的先后順序。如果你在熱力圖上發(fā)現(xiàn)某個轉(zhuǎn)速區(qū)間的溫度樣本異常集中,想了解這個現(xiàn)象是怎么發(fā)生的,還是要回到趨勢線上去看時間序列。
熱力圖的數(shù)據(jù)范圍會影響視覺效果。 因為顏色映射是基于當(dāng)前數(shù)據(jù)范圍內(nèi)的最小值和最大值自動計算的,如果數(shù)據(jù)中存在少量極端離群點,會導(dǎo)致絕大部分正常數(shù)據(jù)都在很窄的顏色區(qū)間內(nèi),熱力圖的分布特征就看不清了。這時候適當(dāng)縮小查詢范圍或者過濾掉極端值,效果會更好。
分桶數(shù)量要跟數(shù)據(jù)量匹配。 桶分得太細(xì)而數(shù)據(jù)量不夠,大部分格子都是空的或者只有一兩個點,熱力圖就變成了一張”稀疏噪聲圖”,看不到有意義的聚集模式。一般來說,大部分格子的樣本數(shù)應(yīng)該在幾十到幾千之間,太密或太疏都不利于讀出信息。
數(shù)值跨量級時考慮對數(shù)刻度。 有些傳感器數(shù)據(jù)的變化范圍跨越多個數(shù)量級——比如微量泄漏時的流速和正常流量差了三個數(shù)量級。線性刻度下,小值區(qū)間的所有數(shù)據(jù)會被擠在底部幾行格子里,完全無法分辨。切換到對數(shù)刻度后,每個數(shù)量級獲得均等的垂直空間,高頻小值和稀疏大值都能被看清。
過濾稀疏格子讓熱點更突出。 熱力圖中通常散布著大量計數(shù)為 1 或 2 的零星格子——它們不代表任何有意義的模式,只是噪聲。隱藏這些低計數(shù)格子后,真正的聚集區(qū)會更加醒目。同時適當(dāng)給格子之間留一點縫隙,也能讓每個格子的顏色更容易被獨立辨識。
三、熱力圖的工業(yè)應(yīng)用場景
場景 1:電流和溫度的對應(yīng)關(guān)系是否正常
一臺電機(jī)的電流和繞組溫度存在自然的對應(yīng)關(guān)系:電流越大,溫度應(yīng)該越高,冷卻系統(tǒng)正常情況下,兩者應(yīng)該保持一個大致的正比關(guān)系。如果這種對應(yīng)關(guān)系被打破——比如電流不高但溫度很高——就說明冷卻出了問題。
X 軸選電流(每 5A 一個桶),Y 軸選溫度(每 3°C 一個桶),加載過去一周的數(shù)據(jù)。正常情況下,熱力圖的深色區(qū)域會沿對角線分布:低電流對應(yīng)低溫,高電流對應(yīng)高溫。如果深色區(qū)域整體向上偏移——電流中等但溫度偏高——說明設(shè)備在同樣的負(fù)載下比之前更熱了,冷卻效率可能在下降。如果深色區(qū)域變得分散、不再有明顯的對角線形態(tài),說明電流和溫度之間的對應(yīng)關(guān)系在變?nèi)?,可能意味著溫度受到了其他因素(環(huán)境、潤滑、機(jī)械摩擦)的干擾。
這種二維對應(yīng)關(guān)系在折線圖上很難判斷——電流和溫度是兩條獨立的線,你看到它們都在波動,但兩條線之間的”匹配程度”靠人眼幾乎無法量化。熱力圖把兩者的關(guān)系壓成一張密度圖,對應(yīng)關(guān)系是否成立、是否在發(fā)生變化,一眼就能判斷。
場景 2:多臺設(shè)備,誰的運行溫度偏高
一個車間有二十臺同型號電機(jī),每臺都有繞組溫度測點。車間主任想快速了解:這批電機(jī)的溫度分布有沒有差異?有沒有哪臺電機(jī)整體溫度偏高?
X 軸選溫度(每 3°C 一個桶),Y 軸選設(shè)備名稱,加載過去一周的數(shù)據(jù)。熱力圖會為每臺電機(jī)生成一行,行內(nèi)顏色深淺反映該電機(jī)在不同溫度區(qū)間的樣本量。正常設(shè)備深色集中在低溫區(qū)間,溫度偏高的設(shè)備深色集中在右側(cè)的高溫區(qū)間——哪臺電機(jī)有問題,一行掃過去就能看到。
如果某臺電機(jī)的深色區(qū)域明顯比其他電機(jī)偏右(溫度高出 5-10°C),即使最高溫度還沒有觸發(fā)告警閾值,也說明該電機(jī)存在異常。”整體偏高”的信號在逐一翻看折線圖時很容易被忽略,但在熱力圖上,同行設(shè)備并列對比,差異會被顏色直接放大。
場景 3:告警在星期幾的幾點最密集
某工廠運維團(tuán)隊管理著上百臺設(shè)備,半年來積累了數(shù)千條告警記錄。運維主管想知道:這些告警在時間上有沒有聚集規(guī)律?
X 軸選一天 24 小時,Y 軸選一周七天,每個格子的顏色深淺代表該時段內(nèi)的告警總次數(shù)。熱力圖直接呈現(xiàn)出深色聚集區(qū)落在哪幾個格子上——比如星期一上午 8-10 點和星期六凌晨 3-5 點。
星期一上午的高發(fā)窗口對應(yīng)每周的開機(jī)啟動階段,設(shè)備經(jīng)歷周末停機(jī)后重新啟動,故障率天然偏高。星期六凌晨的高發(fā)窗口則對應(yīng)夜班人員最少的時段,小問題無人及時發(fā)現(xiàn)和處理,容易蔓延。運維團(tuán)隊據(jù)此調(diào)整了巡檢排班,兩個月后重新生成熱力圖,深色窗口明顯變淺。
四、一張容易被忽視的圖
熱力圖不是什么新發(fā)明。生物信息學(xué)里用它看基因表達(dá)譜,氣象學(xué)里用它看溫度異常的時空分布,網(wǎng)站的運維后臺里用它看用戶點擊熱區(qū)。它不在工業(yè)監(jiān)控軟件的默認(rèn)圖表列表里,不是因為實現(xiàn)不了,而是工業(yè)場景過去對”分布”的需求不夠強(qiáng)烈。
數(shù)據(jù)量小的時候,分布分析靠人腦就夠了。”轉(zhuǎn)速一般就在 500 到 600 之間”——工程師憑經(jīng)驗就說得出來,不需要一張圖來證明。但當(dāng)測點數(shù)量和數(shù)據(jù)頻率同時膨脹后,人對分布的直覺就跟不上了。你不可能憑記憶判斷一臺設(shè)備在過去三個月里的數(shù)百萬個采樣點是在哪個工況區(qū)間最密集,但這恰好是熱力圖一秒鐘就能呈現(xiàn)的東西。
熱力圖把早已在其他行業(yè)驗證過的分布分析方法帶進(jìn)了工業(yè)場景。它做的不是任何復(fù)雜計算,就是一個二維分桶統(tǒng)計——但多一種組織數(shù)據(jù)的視角,有時候能讓人看到之前一直存在卻從未被注意到的規(guī)律。
熱力圖功能自 TDengine IDMP v1.0.19 起在可視化面板中正式可用。更多信息請訪問 idmpdocs.taosdata.com。



互聯(lián)網(wǎng).png)



-1.png)







證.png)


伙伴.png)
伙伴.png)
伙伴.png)



