子批次中颜色条的高度(matplotlib)
我们可以使用以下方法更改颜色栏的高度、宽度和位置:子批次中颜色条的高度(matplotlib),matplotlib,Matplotlib,我们可以使用以下方法更改颜色栏的高度、宽度和位置: import matplotlib.pyplot as plt from mpl_toolkits.axes_grid1 import make_axes_locatable import numpy as np fig = plt.figure() ax = plt.subplot(111) im = ax.imshow(np.arange(100).reshape((10, 10))) c = plt.colorbar(im, cax
import matplotlib.pyplot as plt
from mpl_toolkits.axes_grid1 import make_axes_locatable
import numpy as np
fig = plt.figure()
ax = plt.subplot(111)
im = ax.imshow(np.arange(100).reshape((10, 10)))
c = plt.colorbar(im, cax = fig.add_axes([0.78, 0.5, 0.03, 0.38]))
从
我将在子地块中使用此选项:
我将使用transform transAxes选项设置轴的位置,而不是图形,但它不起作用。首先,从文档中
rect:浮点序列
新轴的尺寸[左、下、宽、高]。所有的数量都在
图形宽度和高度的分数
这就是你的代码不能工作的原因
您可以改为使用
inset_axesself,边界,transform=None
边界:[x0,y0,宽度,高度]
插入轴的左下角及其宽度和高度
变换:变换
默认为ax.transAxes,即rect的单位为轴相对坐标
这里的边界默认为轴坐标单位,但可以根据需要进行更改
import matplotlib.pyplot as plt
import numpy as np
fig, ax = plt.subplots()
im = ax.imshow(np.arange(100).reshape((10, 10)))
cax = ax.inset_axes([0.78, 0.5, 0.03, 0.38])
cb = fig.colorbar(im, cax = cax)
plt.show()
上述方法的替代方法是使用mpl_工具箱.axes_网格1.inset_定位器.inset_轴
ax.inset_轴仅适用于python 3?我得到这个错误:AttributeError:'AxeSubplot'对象没有属性'inset_axes'是的,我添加了一个替代选项。
import matplotlib.pyplot as plt
import numpy as np
fig, ax = plt.subplots()
im = ax.imshow(np.arange(100).reshape((10, 10)))
cax = ax.inset_axes([0.78, 0.5, 0.03, 0.38])
cb = fig.colorbar(im, cax = cax)
plt.show()
import matplotlib.pyplot as plt
from mpl_toolkits.axes_grid1.inset_locator import inset_axes
import numpy as np
fig, ax = plt.subplots()
im = ax.imshow(np.arange(100).reshape((10, 10)))
cax = inset_axes(ax, "100%", "100%", bbox_to_anchor=[0.78, 0.5, 0.03, 0.38],
bbox_transform=ax.transAxes, borderpad=0)
cb = fig.colorbar(im, cax = cax)
plt.show()