【发布时间】:2018-08-14 08:07:20
【问题描述】:
我经常必须创建具有固定宽度(例如文章的列宽)并且其子图在数据坐标系中具有固定比率的图。我想手动设置宽度并获得一个具有所选宽度、子图纵横比和适当高度的图。
示例:文章栏的宽度为 8.5 厘米。我想创建一个带有两个子图(轴)的图,并且为两个轴选择选项ax.set_aspect("equal"),以便y 轴上的 1 个单位与x 轴上的一个单位占用相同的物理空间。
我的绘图现在应该有 8.5 厘米的总宽度,但高度应该从 matplotlib 计算,并考虑子绘图的纵横比以及 xlim 和 ylim 值。
我怎样才能做到这一点?
另外,我如何确保图中使用的字体大小与文章中的相同?因此,如果我的文章在 11pt 中设置了“times”,我如何在我的情节中获得相同大小的相同字体?我尝试使用
params = {'text.usetex': True,
'font.size': 11,
'font.family': 'times',
'text.latex.unicode': True,
}
plt.rcParams.update(params)
但例如,我的绘图中的 x 和 y 标签字体现在比文章中的大得多。我认为“font.size”会更新所有字体大小?
【问题讨论】:
-
图有相同的 x 和 y 限制吗?否则需要另一个约束。
-
如果
ax1和ax2没有相同的限制,它们的方面应该仍然是“相等的”,但现在两个子图之间1 个单位的物理尺寸会有所不同。但是ax1和ax2应该占据相同的宽度(或者理想情况下:可以提供以厘米为单位的固定尺寸或两者之间的比例)。
标签: python matplotlib