Python 如何在4个子批次后增加hspace并仅添加一个颜色栏
我的代码中有六个数据数组(Python 如何在4个子批次后增加hspace并仅添加一个颜色栏,python,matplotlib,Python,Matplotlib,我的代码中有六个数据数组(data1,data2,data3,data4,data5和data6)。下面是我拥有的一个数组示例。我想在第四个热图子图(参见所需图像)之后增加hspace,并仅绘制一个cbar。我怎么做呢 data1 = np.array([[2.25, 9.65], [-1.05, -1.50]]) 我的代码的相关部分: values = [data1, data2, data3, data4, data5, data6] num = [1,
data1
,data2
,data3
,data4
,data5
和data6
)。下面是我拥有的一个数组示例。我想在第四个热图子图(参见所需图像)之后增加hspace
,并仅绘制一个cbar
。我怎么做呢
data1 = np.array([[2.25, 9.65],
[-1.05, -1.50]])
我的代码的相关部分:
values = [data1, data2, data3, data4, data5, data6]
num = [1, 2, 3, 4, 5, 6]
for value, i in zip (values, num):
ax = plt.subplot(3, 2, i)
im, cbar = heatmap(value, x, y, ax=ax, cmap="RdBu", cbarlabel="Temperature", vmin=-2, vmax=20)
plt.subplots_adjust(left=None, bottom=None, right=None, top=None, wspace=0.1, hspace=0.1)
所需图像:
values = [data1, data2, data3, data4, data5, data6]
num = [1, 2, 3, 4, 5, 6]
for value, i in zip (values, num):
ax = plt.subplot(3, 2, i)
im, cbar = heatmap(value, x, y, ax=ax, cmap="RdBu", cbarlabel="Temperature", vmin=-2, vmax=20)
plt.subplots_adjust(left=None, bottom=None, right=None, top=None, wspace=0.1, hspace=0.1)
将此作为参考,我设置了cbar的位置并创建了代码
import seaborn as sns
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
data1 = np.random.random((5,5,))
data2 = np.random.random((5,5,))
data3 = np.random.random((5,5,))
data4 = np.random.random((5,5,))
data5 = np.random.random((5,5,))
data6 = np.random.random((5,5,))
values = [data1, data2, data3, data4, data5, data6]
fig, axes = plt.subplots(nrows=3,ncols=2, sharex=True, sharey=True)
im = sns.heatmap(values[0], ax=axes[0,0], cmap="RdBu", cbar=False)
sns.heatmap(values[1], ax=axes[0,1], cmap="RdBu", cbar=False)
sns.heatmap(values[2], ax=axes[1,0], cmap="RdBu", cbar=False)
sns.heatmap(values[3], ax=axes[1,1], cmap="RdBu", cbar=False)
sns.heatmap(values[4], ax=axes[2,0], cmap="RdBu", cbar=False)
sns.heatmap(values[5], ax=axes[2,1], cmap="RdBu", cbar=False)
mappable = im.get_children()[0]
plt.colorbar(mappable, ax=[axes[1,0],axes[1,1]], orientation = 'horizontal')