日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無先后,達(dá)者為師

網(wǎng)站首頁 編程語言 正文

詳解Python+Matplotlib繪制面積圖&熱力圖_python

作者:侯小啾 ? 更新時間: 2022-06-13 編程語言

1.繪制面積圖

面積圖常用于描述某指標(biāo)隨時間的變化程度。其面積也通常可以有一定的含義。

繪制面積圖使用的是plt.stackplot()方法。

以小學(xué)時期學(xué)的 常見的追擊相遇問題中的速度時間圖像為例,下邊繪制出一幅簡單的v-t圖像。

全局字體設(shè)為默認(rèn)的黑體,時間為從第0秒到第10秒,描述的是甲乙兩個物體的速度。顯然,面積則表示位移。

標(biāo)題部分字體使用楷體(將系統(tǒng)中的TTF字體文件"STKAITI.TTF"復(fù)制到了當(dāng)前目錄下)。

import matplotlib.pyplot as plt
from matplotlib import font_manager

fig = plt.figure(1, facecolor='#ffffcc', figsize=(6, 6))
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
plt.rcParams['axes.facecolor'] = '#cc00ff'
x = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
v1 = [1, 1, 1, 2, 3, 4, 5, 5, 5, 5, 5]
v2 = [0.5, 0.5, 0.5, 1, 1.5, 2, 2.5, 3, 3, 2, 1]
plt.stackplot(x, v1, color=['#ff0000'])
plt.stackplot(x, v2, color=['#33ff66'])
plt.xlim(0, 10)
plt.title('v-t圖像', fontsize=25, color='#0033cc', fontproperties=font_manager.FontProperties(fname="STKAITI.TTF"))
plt.xlabel('t/s')
plt.ylabel('v/(m/s)')
plt.legend(['甲', '乙'], bbox_to_anchor=(0.2, 0.95))
plt.show()

圖像效果呈現(xiàn)如下:

2.繪制熱力圖

在數(shù)據(jù)分析中,熱力圖也是一種常用的方法,熱力圖通過色差、亮度來展示數(shù)據(jù)與數(shù)據(jù)之間的差異。

繪制熱力圖使用的是plt.imshow()方法,這個方法也即matplotlib中圖像處理常用的方法。

下邊做一個熱力圖的案例示例:

import matplotlib.pyplot as plt
from matplotlib import font_manager
import numpy as np
np.random.seed(30)
data = np.random.randint(70, 100, (30, 8))
plt.imshow(data)
plt.xticks(range(0, 8), ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'])
plt.yticks(range(0, 30), np.array(range(1, 31), dtype='U3'))
# 顯示顏色條
plt.colorbar()
plt.title('30個產(chǎn)品的ABCDEFGH指標(biāo)熱力圖', fontsize=25, color='#0033cc', fontproperties=font_manager.FontProperties(fname="STKAITI.TTF"))
plt.show()

圖像效果呈現(xiàn)如下:

原文鏈接:https://blog.csdn.net/weixin_48964486/article/details/124112740

欄目分類
最近更新