亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

將matplotlib的陰影值網格變成一系列條形圖,每行一個?

將matplotlib的陰影值網格變成一系列條形圖,每行一個?

一只斗牛犬 2022-05-11 14:36:04
使用 matlotlib,我可以創建如下所示的圖形:在這里,每一行由一系列從 0 到 0.6 的數字組成。左側軸文本表示每行中的最大值。底部軸文本表示列索引。實際網格的代碼基本上涉及這一行:    im = ax[r,c].imshow(info_to_use, vmin=0, vmax=0.6, cmap='gray')其中是 row和 columnax[r,c]的當前子圖軸,并且是一個 numpy 形狀數組,其值介于 0 和 0.6 之間。rcinfo_to_use(num_rows, num_cols)我想知道是否有一種方法可以轉換上面的代碼,以便它顯示條形圖,每行一個?像這個手繪圖:(與之前的圖相比,我手繪圖中的列數不一樣。)我知道如果將其嵌入到這里的第一個圖中,這將導致非常難以閱讀的圖。對于行數較少的繪圖,我會使用它,這將使條形更易于閱讀。但我不確定如何從這些跳轉到每行的條形圖?;蛘咧辽倏梢苑从乘臇|西,例如,不是將整個單元格著色為灰色,而是根據vmax?
查看完整描述

1 回答

?
牛魔王的故事

TA貢獻1830條經驗 獲得超3個贊

import numpy as np

from matplotlib import pyplot as plt


a = np.random.rand(10,20)*.6

在一個循環中,為二維數組中的每一行調用 plt.subplot 然后 plt.bar 。


for i, thing in enumerate(a,1):

    plt.subplot(a.shape[0],1,i)

    plt.bar(range(a.shape[1]),thing)

plt.show()

plt.close()

或者,創建所有子圖;然后在一個循環中用每個軸制作一個條形圖。


fig, axes = plt.subplots(a.shape[0],1,sharex=True)

for ax, data in zip(axes, a):

    ax.bar(range(a.shape[1]), data)

plt.show()

plt.close()


查看完整回答
反對 回復 2022-05-11
  • 1 回答
  • 0 關注
  • 203 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號