4

我在同一个图中有两个箱线图。出于样式原因,轴应具有相同的长度,以使图形框为正方形。我尝试使用该set_aspect方法,但是由于它们的范围,轴的差异太大,结果很糟糕。

即使它们的点数不同,是否可以有 1:1 的轴?

4

3 回答 3

5

如果将纵横比设置为轴限制的比率,则可以使用Axes.set_aspect来执行此操作。这是一个例子: 替代文字

from matplotlib.pyplot import figure, show

fig = figure()

ax0 = fig.add_subplot(1,2,1)
ax0.set_xlim(10., 10.5)
ax0.set_ylim(0, 100.)
ax0.set_aspect(.5/100)

ax1 = fig.add_subplot(1,2,2)
ax1.set_xlim(0., 1007)
ax1.set_ylim(0, 12.)
x0, x1 = ax1.get_xlim()
y0, y1 = ax1.get_ylim()
ax1.set_aspect((x1-x0)/(y1-y0))

show()

可能有更简单的方法,但我不知道。

于 2009-10-01T22:53:40.313 回答
3

试试axis('equal')。自从我使用 matplotlib 以来已经有一段时间了,但我似乎记得经常输入该命令。

于 2009-10-01T21:58:00.520 回答
2

对于 loglog 图 ( loglog()) 不要忘记使用

ax1.set_aspect(log10(xmax/xmin)/log10(ymax/ymin))
于 2012-01-19T17:23:32.267 回答