我在python中使用matplotlib来使用颜色条创建协方差图。但问题是ylabel是在彩条轴上绘制的。我无法找到解决方法。
以下是一个例子:
这是我的代码:
def create_covariance_plot(X, name):
"""
Visualizes the covariance matrix for a design matrix.
Parameters:
-----------
X:a design matrix where each column is a feature and each row is an observation.
name: the name of the plot.
"""
pylab.figure()
n_cols = X.shape[1]
X = X.T
R = np.corrcoef(X)
pylab.pcolor(R)
cb = pylab.colorbar()
cb.ax.set_ylabel('Correlation Strength', rotation=270)
pylab.yticks(np.arange(0, n_cols + 0.5),range(0,n_cols))
pylab.xticks(np.arange(0, n_cols + 0.5),range(0,n_cols))
pylab.xlim(0, n_cols)
pylab.ylim(0, n_cols)
pylab.xlabel("Feature")
pylab.ylabel("Feature")
pylab.savefig(name + ".png")
答案 0 :(得分:6)
更改为
cb.ax.set_ylabel('Correlation Strength', rotation=270, labelpad=25)
一般来说,您应该期望便利功能能够做出最好的猜测"方法,你总是可以使用更一般的函数指定精确的轴,标签等位置,在这种情况下可能是figtext。