# Python熱力圖繪制方法
創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供夏邑網(wǎng)站建設(shè)、夏邑做網(wǎng)站、夏邑網(wǎng)站設(shè)計、夏邑網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、夏邑企業(yè)網(wǎng)站模板建站服務(wù),10余年夏邑做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。
熱力圖的使用場景有?
1.描述數(shù)據(jù)在空間的密集程度,常見有城市熱力圖,區(qū)域熱力圖
2.描述多個變量之間相關(guān)性高低程度
# step 1 準備數(shù)據(jù)集,讀取excel列表內(nèi)容,usecols = index, 這里是表里的第一列不讀取。
index =range(1, 11)
dataset = np.array(pd.read_csv(r'C:\Users\Administrator\Desktop\heatmap.csv', usecols=index))
# step 2? 讀取excel行索引轉(zhuǎn)成列表,作為熱力圖的y軸標簽
a = (pd.read_csv(r'C:\Users\Administrator\Desktop\heatmap.csv', usecols=[0]))
y_label =list(a.stack())
# step 3 讀取excel列索引轉(zhuǎn)成列表,作為熱力圖的x軸標簽
b = (pd.read_csv(r'C:\Users\Administrator\Desktop\heatmap.csv'))
column_index=(b.columns.tolist())
x_label = column_index[1:]
# 這一步是為了計算熱力圖的數(shù)據(jù)的最大值,可以進行標準化處理,也可以直接顯示數(shù)據(jù),dataframe轉(zhuǎn)成list,從list里面尋找最大值
dataset_max = (pd.read_csv(r'C:\Users\Administrator\Desktop\heatmap.csv', usecols=index))
list1 = np.array(dataset_max.stack())
max_number =max(list1)
# step 4 開始繪制熱力圖
plt.figure(figsize=(14, 8))# 定義輸出圖像大小,annot參數(shù)決定是否在熱力圖上顯示數(shù)值,Vmax,Vmin表示最大最小值,cmap表示顏色
sns.heatmap(dataset, fmt='.0f', annot=True, vmin=0, vmax=max_number, cmap='Reds', yticklabels=y_label,
? ? ? ? xticklabels=x_label)
# 繪制標簽
plt.xlabel('This is x label', labelpad=15)
plt.ylabel('This is y label', labelpad=20)
plt.show()
python中可使用seaborn.heatmap畫熱力圖, 官方文檔在這
在分類任務(wù)中,也可用于畫混淆矩陣:
一些參數(shù)的含義:
例子:
將最后一行改為,設(shè)置最大值和最小值:
設(shè)置中心值:
從文件中獲取數(shù)據(jù),并畫圖給出有意義的橫縱坐標:
將passengers對應(yīng)的人數(shù)標出:
設(shè)置方格之間的間隔:
設(shè)置使用不同的顏色:
以某個具體的數(shù)據(jù)為中心:
自動填充坐標值:
不畫右邊的熱度條:
python數(shù)據(jù)分析常用圖大集合:包含折線圖、直方圖、垂直條形圖、水平條形圖、餅圖、箱線圖、熱力圖、散點圖、蜘蛛圖、二元變量分布、面積圖、六邊形圖等12種常用可視化數(shù)據(jù)分析圖,后期還會不斷的收集整理,請關(guān)注更新!
以下默認所有的操作都先導(dǎo)入了numpy、pandas、matplotlib、seaborn
一、折線圖
折線圖可以用來表示數(shù)據(jù)隨著時間變化的趨勢
Matplotlib
plt.plot(x,?y)
plt.show()
Seaborn
df?=?pd.DataFrame({'x':?x,?'y':?y})
sns.lineplot(x="x",?y="y",?data=df)
plt.show()
二、直方圖
直方圖是比較常見的視圖,它是把橫坐標等分成了一定數(shù)量的小區(qū)間,然后在每個小區(qū)間內(nèi)用矩形條(bars)展示該區(qū)間的數(shù)值
Matplotlib
Seaborn
三、垂直條形圖
條形圖可以幫我們查看類別的特征。在條形圖中,長條形的長度表示類別的頻數(shù),寬度表示類別。
Matplotlib
Seaborn
1plt.show()
四、水平條形圖
五、餅圖
六、箱線圖
箱線圖由五個數(shù)值點組成:最大值 (max)、最小值 (min)、中位數(shù) (median) 和上下四分位數(shù) (Q3, Q1)。
可以幫我們分析出數(shù)據(jù)的差異性、離散程度和異常值等。
Matplotlib
Seaborn
七、熱力圖
力圖,英文叫 heat map,是一種矩陣表示方法,其中矩陣中的元素值用顏色來代表,不同的顏色代表不同大小的值。通過顏色就能直觀地知道某個位置上數(shù)值的大小。
通過 seaborn 的 heatmap 函數(shù),我們可以觀察到不同年份,不同月份的乘客數(shù)量變化情況,其中顏色越淺的代表乘客數(shù)量越多
八、散點圖
散點圖的英文叫做 scatter plot,它將兩個變量的值顯示在二維坐標中,非常適合展示兩個變量之間的關(guān)系。
Matplotlib
Seaborn
九、蜘蛛圖
蜘蛛圖是一種顯示一對多關(guān)系的方法,使一個變量相對于另一個變量的顯著性是清晰可見
十、二元變量分布
二元變量分布可以看兩個變量之間的關(guān)系
十一、面積圖
面積圖又稱區(qū)域圖,強調(diào)數(shù)量隨時間而變化的程度,也可用于引起人們對總值趨勢的注意。
堆積面積圖還可以顯示部分與整體的關(guān)系。折線圖和面積圖都可以用來幫助我們對趨勢進行分析,當(dāng)數(shù)據(jù)集有合計關(guān)系或者你想要展示局部與整體關(guān)系的時候,使用面積圖為更好的選擇。
十二、六邊形圖
六邊形圖將空間中的點聚合成六邊形,然后根據(jù)六邊形內(nèi)部的值為這些六邊形上色。
原文至:
熱力圖的一個常見應(yīng)用場景是繪制相關(guān)系數(shù)熱力圖,數(shù)據(jù)準備一個相關(guān)系數(shù)矩陣。
調(diào)用 heatmap 方法繪制熱力圖。
設(shè)置 vmin 和 vmax 參數(shù)可以調(diào)整調(diào)色板的下限值和上限值。
設(shè)置 cmap 參數(shù),可以修改調(diào)色板樣式。
設(shè)置參數(shù) cbar=False 可以隱藏圖例。
設(shè)置參數(shù) annot=True 可以顯示熱力圖上的具體數(shù)值,設(shè)置 fmt 參數(shù),可以修改數(shù)值顯示的樣式。
分享題目:python熱力圖函數(shù),python畫三維熱力圖
分享網(wǎng)址:http://aaarwkj.com/article8/hchiop.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站建設(shè)、電子商務(wù)、微信小程序、服務(wù)器托管、網(wǎng)站改版、虛擬主機
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)