使用日歷熱圖進(jìn)行時(shí)序數(shù)據(jù)可視化
相信很多人都會(huì)在 Github 中看到這么一個(gè)熱圖,該熱圖記錄的是 Github 平臺(tái)使用的日常貢獻(xiàn)。在每個(gè)日歷年的熱圖中以天為單位采樣的時(shí)間序列數(shù)據(jù)。GitHub 的貢獻(xiàn)圖表示用戶在過(guò)去幾年中所做的貢獻(xiàn)數(shù)量。色塊表示貢獻(xiàn)的數(shù)量,如色標(biāo)下方所示。從這張熱圖中,我們可以檢測(cè)到每天的貢獻(xiàn)模式。

時(shí)間序列數(shù)據(jù)
時(shí)間序列數(shù)據(jù)是隨著時(shí)間的推移收集并按照一定規(guī)則排序的一系列數(shù)據(jù),如時(shí)間序列中的每小時(shí)、每天、每月或每年的數(shù)據(jù)序列。時(shí)間序列的應(yīng)用包括來(lái)自工業(yè)過(guò)程的傳感器讀數(shù)、降水、降雨、溫度或農(nóng)業(yè)作物生長(zhǎng)等天氣數(shù)據(jù),患者在一段時(shí)間內(nèi)的醫(yī)療記錄等。時(shí)間序列分析發(fā)現(xiàn)隱藏的模式,如趨勢(shì)或季節(jié)性。這里有份很詳盡的介紹,建議戳??時(shí)間序列定義、均值、方差、自協(xié)方差及相關(guān)性
日歷熱圖
日歷熱圖使用彩色單元格,通常采用單一基色色調(diào),并使用其明度、色調(diào)和飽和度進(jìn)行擴(kuò)展(如從淺到深的藍(lán)色)。它在日歷視圖中顯示每天事件的相對(duì)數(shù)量。每天按周排列,按月和年分組。這使你能夠快速識(shí)別每天和每周的模式。
Calplot
可視化是深入了解數(shù)據(jù)的好方法。在檢查時(shí)間序列數(shù)據(jù)時(shí),必須從數(shù)據(jù)中了解季節(jié)性或周期性行為(如果涉及)。使用 calplot python 庫(kù)創(chuàng)建熱圖。Calplot 從 Pandas 時(shí)間序列數(shù)據(jù)創(chuàng)建熱圖。
pip?install?calplot
Collecting calplot
Downloading calplot-0.1.7.4-py3-none-any.whl (8.2 kB)
Installing collected packages: calplot
Successfully installed calplot-0.1.7.4
基本繪圖
import?calplot
import?numpy?as?np;?np.random.seed(sum(map(ord,?'calplot')))
import?pandas?as?pd
all_days?=?pd.date_range('1/1/2019',?periods=730,?freq='D')
days?=?np.random.choice(all_days,?500)
events?=?pd.Series(np.random.randn(len(days)),?index=days)
calplot.calplot(events)

隱藏邊界
邊界相關(guān)參數(shù):edgecolor ,指的是分隔月份的線條的顏色。將其設(shè)置為None即為隱藏邊界。
all_days?=?pd.date_range('1/1/2019',?periods=360,?freq='D')
days?=?np.random.choice(all_days,?500)
events?=?pd.Series(np.random.randn(len(days)),?index=days)
calplot.calplot(events,?edgecolor=None,?cmap='YlGn')

更改邊界年份樣式
參數(shù)yearlabel_kws傳遞給 matplotlib set_ylabel調(diào)用的關(guān)鍵字參數(shù)用于繪制每個(gè)子圖的年份。該參數(shù)接受一個(gè)字典,可以設(shè)置顏色,大小等樣式。
calplot.calplot(events,?
????????????????yearlabel_kws={'color':?'black'},
????????????????cmap='YlGn')

添加文本標(biāo)簽
和普通熱圖類似,可以在每個(gè)小格子上顯示具體數(shù)值,通過(guò)參數(shù)textformat和textfiller控制,分別表示網(wǎng)格單元文本的字符串格式,以及網(wǎng)格單元格的在文本缺失數(shù)據(jù)的時(shí)顯示的文本樣式。
calplot.calplot(events,?textformat='{:.0f}',
????????????????textfiller='-',?cmap='YlGn')

隱藏顏色條
熱圖右邊都會(huì)有個(gè)顏色線條,以注明每種顏色的顏色范圍,如果你不需要顯示,可以將參數(shù) colorbar 設(shè)置為 False。
calplot.calplot(events,?colorbar=False,?cmap='YlGn')

設(shè)置title
控制熱圖標(biāo)題的參數(shù)suptitle,接受一個(gè)字符串。
calplot.calplot(events,?
????????????????suptitle='Random?data?from?standard?normal?distribution',?
????????????????cmap='YlGn')

隱藏?zé)釄D的邊線
控制將每天分開(kāi)的線的寬度參數(shù)linewidth,如果要將其隱藏,可以將其直接設(shè)置為0即可。
calplot.calplot(events,?linewidth=0,?cmap='YlGn')

更多詳情請(qǐng)見(jiàn):https://calplot.readthedocs.io/en/latest/
對(duì)比Excel系列圖書累積銷量達(dá)15w冊(cè),讓你輕松掌握數(shù)據(jù)分析技能,可以在全網(wǎng)搜索書名進(jìn)行了解選購(gòu):

