将颜色条添加到表matplotlib

时间:2013-12-24 02:48:23

标签: python matplotlib

我有以下代码用于在matplotlib中制作表格。

fig = plt.figure(figsize=(15,8))
ax = fig.add_subplot(111, frameon=True, xticks = [], yticks = [])
tb = plt.table(cellText = cells[:30], rowLabels = range(30), colLabels = range(30), loc = 'center',cellColours = plt.cm.hot(normal(cells[:30])))
ax.add_table(tb)
plt.show()

plt是一个pyplot对象

我想为我使用的色彩图添加一个颜色条。

我尝试了fig.colorbar(),但这给了我一个画布错误。

1 个答案:

答案 0 :(得分:2)

您可以按imshow创建虚拟图像并隐藏它:

from matplotlib import pyplot as plt
fig = plt.figure(figsize=(8,4))
ax = fig.add_subplot(111, frameon=True, xticks = [], yticks = [])
cells = np.random.randint(0, 100, (10, 10))
img = plt.imshow(cells, cmap="hot")
plt.colorbar()
img.set_visible(False)
tb = plt.table(cellText = cells, 
    rowLabels = range(10), 
    colLabels = range(10), 
    loc = 'center',
    cellColours = img.to_rgba(cells))
ax.add_table(tb)
plt.show()

enter image description here