我正在尝试创建带有一些标记的水平框(轴)。
尽管 y 轴按比例调整(即,高度变量使用 figsize 比率来计算适当的 y 最大值),但一切正常,除了轴的大小会随着 x 轴的不同范围而变化。
minimum = avg - 2 * std
maximum = avg + 2 * std
height = (2/8)*(maximum-minimum)
fig = plt.figure(figsize=(8, 2))
ax = fig.add_axes([minimum, 0, maximum, height])
ax.set_xlim((minimum, maximum))
ax.set_ylim((0,height))
下面是上面代码所来自的函数的另一种变体,但是对于同一函数中的不同值,结果是不同的
minimum = 0
maximum = avg * 2
height = (2/8)*(maximum-minimum)
fig = plt.figure(figsize=(8, 2))
ax = fig.add_axes([minimum, 0, maximum, height])
ax.set_xlim((minimum, maximum))
ax.set_ylim((0,height))
screenshot of what the different graphs looks like 关于 figsize 的使用有一些问题,但与我的情况无关。
提前致谢!
最佳答案
在上面的代码中,您故意使用不同大小的坐标轴
ax = fig.add_axes([minimum, 0, maximum, height])
所以难怪他们是不同的。只要 minimum
、maximum
和 height
不总是相同,您就会得到不同大小的轴。
改为使用
ax = fig.add_subplot(111)
关于python - 尽管使用了 figsize(),但数字大小不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46895674/