我想知道您是否可以在matplotlib中以厘米为单位指定图形的大小。目前,我写道:

def cm2inch(value):
    return value/2.54

fig = plt.figure(figsize=(cm2inch(12.8), cm2inch(9.6)))

但是,有一种本机的方法吗?

最佳答案

这不是问题的答案''是否有本机方法? ”,但我认为有一种更优雅的方法:

def cm2inch(*tupl):
    inch = 2.54
    if isinstance(tupl[0], tuple):
        return tuple(i/inch for i in tupl[0])
    else:
        return tuple(i/inch for i in tupl)

然后可以发出plt.figure(figsize=cm2inch(12.8, 9.6)),我认为这是一种更简洁的方法。该实现还允许我们使用cm2inch((12.8, 9.6)),我个人不喜欢,但是有些人可能会这样做。

编辑:即使目前尚无本地方法,我还是找到了一个讨论here

08-26 22:37