相关疑难解决方法(0)

Matplotlib 2子图,1个Colorbar

我花了很长时间研究如何让两个子图共享相同的y轴,并在Matplotlib中共享两个单色条.

正在发生的事情是,当我打电话给colorbar()在任一功能subplot1或者subplot2,它会自动缩放的情节使得彩条加的情节会适合进入"插曲"包围盒内部,造成两个并排侧地块是两个非常不同的大小.

为了解决这个问题,我尝试创建了第三个子图,然后我将其修改为不存在只有一个颜色条存在的图.唯一的问题是,现在这两个地块的高度和宽度是不均匀的,我无法弄清楚如何使它看起来没问题.

这是我的代码:

from __future__ import division
import matplotlib.pyplot as plt
import numpy as np
from matplotlib import patches
from matplotlib.ticker import NullFormatter

# SIS Functions
TE = 1 # Einstein radius
g1 = lambda x,y: (TE/2) * (y**2-x**2)/((x**2+y**2)**(3/2)) 
g2 = lambda x,y: -1*TE*x*y / ((x**2+y**2)**(3/2))
kappa = lambda x,y: TE / (2*np.sqrt(x**2+y**2))

coords = np.linspace(-2,2,400)
X,Y = np.meshgrid(coords,coords)
g1out = g1(X,Y)
g2out = g2(X,Y)
kappaout = kappa(X,Y)
for i in range(len(coords)):
    for …
Run Code Online (Sandbox Code Playgroud)

python matplotlib colorbar subplot

207
推荐指数
12
解决办法
17万
查看次数

尝试添加颜色条时出错

我正在尝试创建一个相关矩阵。创建矩阵工作正常,直到我尝试添加颜色条。

这是我当前的代码:

def corr_matrix(data):
    '''function to find the mean for days'''

    data=data.ix[:,1:].corr(method='pearson')
    row_lab=[]
    col_lab=[]

    for i in data:
        row_lab.append(i)
        col_lab.append(i)
    column_labels = col_lab
    row_labels = row_lab
    data=np.round(data.corr(method='pearson').abs(), decimals=2)
    data=np.array(data)
    fig, ax = plt.subplots()

    plt.axis('tight')
    heatmap = ax.pcolor(data, cmap='RdPu'),                  
    plt.colorbar(mappable=heatmap)    # put the major ticks at the middle of each cell
    ax.set_xticks(np.arange(data.shape[0])+0.5, minor=False)
    ax.set_yticks(np.arange(data.shape[1])+0.5, minor=False)

    ax.invert_yaxis()
    ax.xaxis.tick_top()    
    ax.set_xticklabels(row_labels, minor=False, rotation=90)
    ax.set_yticklabels(column_labels, minor=False)
    plt.show()
Run Code Online (Sandbox Code Playgroud)

我努力了plt.colorbar()。这也行不通。任何帮助都会很棒!

我看过这个问题:AttributeError while add colorbar in matplotlib但答案似乎不起作用:(

这是我的错误:

Traceback (most recent call last):
  File …
Run Code Online (Sandbox Code Playgroud)

python matplotlib colorbar

2
推荐指数
1
解决办法
7343
查看次数

标签 统计

colorbar ×2

matplotlib ×2

python ×2

subplot ×1