亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么利用Python創作熱力圖

發布時間:2022-10-10 17:46:16 來源:億速云 閱讀:186 作者:iii 欄目:web開發

這篇文章主要介紹“怎么利用Python創作熱力圖”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“怎么利用Python創作熱力圖”文章能幫助大家解決問題。

1. 引言

熱力圖,是一種通過對色塊著色來顯示數據的統計圖表。繪圖時,需指定顏色映射的規則。例如,較大的值由較深的顏色表示,較小的值由較淺的顏色表示;較大的值由偏暖的顏色表示,較小的值由較冷的顏色表示,等等。

2. 讀取圖像

首先,我們來讀取樣例圖像,并對其進行相應的crop操作。樣例代碼如下:

import numpy as np 
import matplotlib.pyplot as plt
import skimage.io as io
img = plt.imread("butterfly-7320158_960_720.jpg")
# crop
img_cut = img[147:447,:,:]
plt.figure()
plt.imshow(img_cut)

3. 圖像灰度化

由于熱力圖主要用于可視化二維矩陣,所以我們需要將彩色圖轉化為灰度圖,代碼如下:

from skimage.color import rgb2gray
gray_img = rgb2gray(img_cut)
plt.imshow(gray_img,cmap='gray')

4. 像素化效果

這一步的操作主要是為了使圖像看起來像像素化的藝術品。我們首先將圖像劃分為非重疊block塊。我們將block塊的大小劃分的越大,像素化程度看起來越高。

對于每個block塊,我們計算該塊中一些代表值。在這里,我們可以使用整個塊的最小值,最大值或中值。這里僅展示最小值的情形,代碼如下:

from skimage import util

# select box size
block_shape = (10, 10) 
view = util.view_as_blocks(gray_img, block_shape)

# collapse the last two dimensions in one
flatten_view = view.reshape(view.shape[0], view.shape[1], -1)

# choose min within box
min_view = np.min(flatten_view, axis=2)

plt.imshow(min_view,cmap='gray')

5. 為熱力圖選擇調色板

這一步是我們創作熱力圖藝術效果自由度最高的步驟。seaborn調色板可能是一個很好的選擇。我們來看一些不同風格的效果圖:

import seaborn as sns

# save figure for LinkedIn recommended size (2000 width, 600 height)
my_dpi=96
plt.figure(figsize=(2000/my_dpi, 600/my_dpi), dpi=my_dpi) 
sns.heatmap(max_view,xticklabels=False,yticklabels=False,cmap="coolwarm",cbar=False)
plt.savefig("coolwarm.png",bbox_inches='tight')

關于“怎么利用Python創作熱力圖”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注億速云行業資訊頻道,小編每天都會為大家更新不同的知識點。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

开原市| 印江| 繁昌县| 上思县| 南江县| 丰宁| 马公市| 伊通| 北安市| 宣恩县| 万安县| 唐海县| 仲巴县| 介休市| 永兴县| 广南县| 交城县| 廉江市| 延长县| 阿尔山市| 西平县| 巴塘县| 靖远县| 闵行区| 东阿县| 萍乡市| 涡阳县| 钟祥市| 米易县| 高州市| 桦川县| 普陀区| 丽江市| 松滋市| 亳州市| 宜兰县| 丰城市| 中西区| 宜都市| 平顺县| 凤凰县|