最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用Python制作氣泡熱圖的示例代碼

 更新時(shí)間:2025年07月10日 09:38:07   作者:Code_Verse  
在數(shù)據(jù)分析和可視化中,氣泡熱圖是一種非常直觀的工具,可以展示數(shù)據(jù)之間的關(guān)系和強(qiáng)度,下面小編就來(lái)和大家詳細(xì)講講如何用Python制作一個(gè)氣泡熱圖吧

在數(shù)據(jù)分析和可視化中,氣泡熱圖是一種非常直觀的工具,可以展示數(shù)據(jù)之間的關(guān)系和強(qiáng)度。今天,我將帶你一步步學(xué)會(huì)如何用Python制作一個(gè)氣泡熱圖。別擔(dān)心,我會(huì)用最簡(jiǎn)單的方式解釋每一個(gè)步驟,即使你沒有編程基礎(chǔ)也能輕松上手!

一、什么是氣泡熱圖

氣泡熱圖是一種結(jié)合了氣泡圖和熱圖特點(diǎn)的可視化圖表。它通過氣泡的大小和顏色來(lái)表示數(shù)據(jù)的強(qiáng)度,同時(shí)通過位置來(lái)展示數(shù)據(jù)的分類或分組。這種圖表非常適合展示多個(gè)變量之間的關(guān)系,例如不同樣本之間的某種屬性強(qiáng)度。

二、我們需要什么樣的數(shù)據(jù)

在制作氣泡熱圖之前,我們需要準(zhǔn)備以下類型的數(shù)據(jù):

兩個(gè)分類變量:這兩個(gè)變量將決定氣泡的位置。例如,X軸可以是一個(gè)分類變量(如不同的類別或分組),Y軸是另一個(gè)分類變量。

一個(gè)數(shù)值變量:這個(gè)變量決定了氣泡的大小和顏色,通常表示某種強(qiáng)度或值的大小。

在我們的代碼示例中,我們用的是隨機(jī)生成的數(shù)據(jù),但如果你有自己的數(shù)據(jù),可以按照類似的結(jié)構(gòu)準(zhǔn)備。比如:

  • X軸:1到10的類別(可以是任何分組)。
  • Y軸:1到10的樣本(也可以是其他分組)。
  • 每個(gè)氣泡的大小和顏色由一個(gè)10×10的矩陣決定,矩陣中的每個(gè)值表示氣泡的強(qiáng)度。

三、開始制作氣泡熱圖

1. 安裝必要的庫(kù)

在開始之前,我們需要安裝兩個(gè)Python庫(kù):numpymatplotlib。這兩個(gè)庫(kù)分別用于處理數(shù)據(jù)和繪圖。

如果你還沒有安裝,可以通過以下命令安裝:

pip install numpy matplotlib

2. 準(zhǔn)備代碼

接下來(lái),我們來(lái)看看代碼的每一步。

(1)導(dǎo)入庫(kù)

import numpy as np
import matplotlib.pyplot as plt
  • numpy用于處理數(shù)據(jù),比如生成網(wǎng)格和隨機(jī)數(shù)。
  • matplotlib.pyplot用于繪圖。

(2)創(chuàng)建示例數(shù)據(jù)

K = np.arange(1, 11)  # X軸的分類變量
Samples = np.arange(1, 11)  # Y軸的分類變量
X, Y = np.meshgrid(K - 0.5, Samples - 0.5)  # 氣泡中心位于格子中心
Z = np.random.rand(10, 10)  # 隨機(jī)生成的強(qiáng)度數(shù)據(jù)
  • KSamples分別是X軸和Y軸的分類變量。
  • X, Y是通過meshgrid生成的網(wǎng)格,用于確定氣泡的中心位置。
  • Z是一個(gè)10×10的矩陣,表示每個(gè)氣泡的強(qiáng)度(隨機(jī)生成的)。

(3)設(shè)置氣泡大小

max_bubble_diameter = 0.8  # 最大氣泡直徑
bubble_sizes = Z * max_bubble_diameter**2 * 800  # 調(diào)整大小比例因子

氣泡的大小與Z成正比,但最大直徑被限制為0.8,以避免氣泡之間重疊。

(4)繪制氣泡圖

plt.figure(figsize=(10, 8))  # 設(shè)置圖形大小
scatter = plt.scatter(X, Y, s=bubble_sizes, c=Z, cmap='viridis', alpha=0.7, edgecolors="black", linewidth=1)
  • 使用scatter繪制氣泡圖。
  • s參數(shù)設(shè)置氣泡大小。
  • c參數(shù)設(shè)置氣泡顏色,顏色由Z決定。
  • cmap='viridis'設(shè)置了顏色映射,你可以換成其他顏色映射(如'plasma''coolwarm')。
  • alpha是透明度,edgecolorslinewidth設(shè)置了氣泡的邊框顏色和寬度。

(5)添加顏色條

cbar = plt.colorbar(scatter)
cbar.set_label('Bubble Intensity', fontsize=12)

顏色條可以幫助我們理解氣泡顏色的含義。

(6)設(shè)置標(biāo)題和標(biāo)簽

plt.title("Bubble Heatmap Plot", fontsize=18, fontweight='bold')
plt.xlabel("K (w)", fontsize=14)
plt.ylabel("Samples", fontsize=14)

標(biāo)題和坐標(biāo)軸標(biāo)簽讓圖表更清晰。

(7)設(shè)置坐標(biāo)軸刻度和范圍

plt.xticks(K, fontsize=12)
plt.yticks(Samples, fontsize=12)
plt.xlim(0, 10)
plt.ylim(0, 10)

確保氣泡對(duì)齊在格子內(nèi),避免被切割。

(8)添加網(wǎng)格

plt.grid(True, which='both', axis='both', linestyle='-', linewidth=1, color='black')

網(wǎng)格可以幫助我們更好地理解氣泡的位置。

(9)調(diào)整布局并顯示圖形

plt.tight_layout(pad=0.1)  # 調(diào)整布局
plt.show()  # 顯示圖形

四、運(yùn)行代碼,查看結(jié)果

將上述代碼復(fù)制到你的Python環(huán)境中,運(yùn)行后你將看到一個(gè)漂亮的氣泡熱圖!你可以嘗試修改數(shù)據(jù)或顏色映射,看看會(huì)發(fā)生什么變化。

完整代碼如下:

import numpy as np
import matplotlib.pyplot as plt
# 創(chuàng)建示例數(shù)據(jù)
K = np.arange(1, 11)
Samples = np.arange(1, 11)
X, Y = np.meshgrid(K - 0.5, Samples - 0.5)  # 氣泡中心位于格子中心
Z = np.random.rand(10, 10)
# 設(shè)置氣泡大小,大小與數(shù)據(jù)Z成正比,但限制最大直徑為0.8
max_bubble_diameter = 0.8  # 最大氣泡直徑
bubble_sizes = Z * max_bubble_diameter**2 * 800  # 調(diào)整大小比例因子以適應(yīng)最大直徑限制
# 創(chuàng)建氣泡圖
plt.figure(figsize=(10, 8))
# 繪制氣泡圖,使用 'viridis' 色系
scatter = plt.scatter(X, Y, s=bubble_sizes, c=Z, cmap='viridis', alpha=0.7, edgecolors="black", linewidth=1)
# 添加顏色條
cbar = plt.colorbar(scatter)
cbar.set_label('Bubble Intensity', fontsize=12)
# 設(shè)置標(biāo)題和標(biāo)簽
plt.title("Bubble Heatmap Plot", fontsize=18, fontweight='bold')
plt.xlabel("K (w)", fontsize=14)
plt.ylabel("Samples", fontsize=14)
# 設(shè)置坐標(biāo)軸刻度,確保氣泡對(duì)齊在格子內(nèi)
plt.xticks(K, fontsize=12)
plt.yticks(Samples, fontsize=12)
# 添加網(wǎng)格,清晰展示格子邊框
plt.grid(True, which='both', axis='both', linestyle='-', linewidth=1, color='black')
# 設(shè)置坐標(biāo)軸范圍,使氣泡顯示在格子內(nèi),避免氣泡被切割
plt.xlim(0, 10)
plt.ylim(0, 10)
# 調(diào)整布局,確保圖形無(wú)多余空白并完整顯示
plt.tight_layout(pad=0.1)  # 適當(dāng)減小邊緣空白
# 顯示圖形
plt.show()

五、總結(jié)

通過今天的教程,我們學(xué)會(huì)了如何用Python制作氣泡熱圖。只要準(zhǔn)備好合適的分類變量和數(shù)值變量,就可以輕松生成這種直觀的圖表。希望你能用這個(gè)技能來(lái)展示你的數(shù)據(jù)!

到此這篇關(guān)于使用Python制作氣泡熱圖的示例代碼的文章就介紹到這了,更多相關(guān)Python氣泡熱圖內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python一行代碼快速實(shí)現(xiàn)程序進(jìn)度條示例

    Python一行代碼快速實(shí)現(xiàn)程序進(jìn)度條示例

    這篇文章主要為大家介紹了Python一行代碼快速實(shí)現(xiàn)程序進(jìn)度條示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-03-03
  • 利用Python如何將數(shù)據(jù)寫到CSV文件中

    利用Python如何將數(shù)據(jù)寫到CSV文件中

    在數(shù)據(jù)分析中經(jīng)常需要從csv格式的文件中存取數(shù)據(jù)以及將數(shù)據(jù)寫書到csv文件中。下面這篇文章主要給大家介紹了關(guān)于利用Python如何將數(shù)據(jù)寫到CSV文件中的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2018-06-06
  • python3連接kafka模塊pykafka生產(chǎn)者簡(jiǎn)單封裝代碼

    python3連接kafka模塊pykafka生產(chǎn)者簡(jiǎn)單封裝代碼

    今天小編就為大家分享一篇python3連接kafka模塊pykafka生產(chǎn)者簡(jiǎn)單封裝代碼,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧
    2019-12-12
  • python引入導(dǎo)入自定義模塊和外部文件的實(shí)例

    python引入導(dǎo)入自定義模塊和外部文件的實(shí)例

    下面小編就為大家?guī)?lái)一篇python引入導(dǎo)入自定義模塊和外部文件的實(shí)例。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧
    2017-07-07
  • 從安裝到精通詳解Python包管理神器pip完全指南(小白友好版)

    從安裝到精通詳解Python包管理神器pip完全指南(小白友好版)

    本文是一篇Python包管理工具pip的全面指南,從基礎(chǔ)到進(jìn)階介紹了pip的核心功能和使用技巧,全文采用通俗易懂的語(yǔ)言,適合Python初學(xué)者,快跟隨小編一起學(xué)習(xí)一下吧
    2026-03-03
  • 給我一面國(guó)旗 python幫你實(shí)現(xiàn)

    給我一面國(guó)旗 python幫你實(shí)現(xiàn)

    這篇文章主要為大家詳細(xì)介紹了Python之給我一面國(guó)旗的實(shí)現(xiàn)代碼,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-09-09
  • Python中常用數(shù)據(jù)類型使用示例概括總結(jié)

    Python中常用數(shù)據(jù)類型使用示例概括總結(jié)

    這篇文章主要為大家介紹了Python中常用數(shù)據(jù)類型使用示例概括總結(jié),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-04-04
  • 利用Python實(shí)現(xiàn)文檔批量重命名

    利用Python實(shí)現(xiàn)文檔批量重命名

    日常工作中總會(huì)遇到一些需要收集文件的情況,但往往最后收集回來(lái)的文件名稱會(huì)五花八門,下面小編就來(lái)為大家講講如何使用Python實(shí)現(xiàn)批量重命名操作吧
    2025-02-02
  • Python K最近鄰從原理到實(shí)現(xiàn)的方法

    Python K最近鄰從原理到實(shí)現(xiàn)的方法

    這篇文章主要介紹了Python K最近鄰從原理到實(shí)現(xiàn)的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • Python中垃圾回收和del語(yǔ)句詳解

    Python中垃圾回收和del語(yǔ)句詳解

    Python語(yǔ)言默認(rèn)采用的垃圾收集機(jī)制是引用計(jì)數(shù)法,本文詳細(xì)的介紹了Python中垃圾回收和del語(yǔ)句詳解,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-11-11

最新評(píng)論

灌云县| 横峰县| 长寿区| 平昌县| 平舆县| 鄂温| 崇仁县| 航空| 扶沟县| 三门县| 株洲县| 响水县| 剑川县| 北流市| 靖安县| 嘉禾县| 桦南县| 龙门县| 襄汾县| 永顺县| 绵阳市| 台南市| 岳西县| 黄梅县| 邢台县| 张北县| 长葛市| 四川省| 通江县| 平果县| 洛阳市| 永川市| 许昌县| 穆棱市| 土默特左旗| 连城县| 河北区| 镇康县| 潍坊市| 航空| 从化市|