Matplotlib figsize在WXAgg中表现奇怪

时间:2018-09-05 10:10:08

标签: python matplotlib

我正在尝试将图形调整为A4纸张尺寸,以将其另存为pdf。使用WXAgg时,这会产生奇怪的行为。这是一个示例:

import matplotlib as mpl
mpl.use("WXAgg")
import numpy as np
import matplotlib.pyplot as plt

# data to plot
x = np.arange(0, 10, 0.005)
y = np.sin(x)

# plot the data
fig = plt.figure()
ax = fig.add_axes([0,0,1,1])
ax.plot(x, y)

# resize figure and immediatly print it's size
page_width, page_height = (8.2765, 11.70475) #A4
fig.set_size_inches(page_width, page_height)
print fig.get_size_inches()

我得到的输出是[ 8.27 7.59],而不是预期的。当我注释掉mpl.use("WXAgg")时,它可以正常工作。然后输出将是预期的[ 8.2765 11.70475]

编辑:显然,这与屏幕的大小有关。我更改了屏幕(将监视器插入笔记本电脑),并且输出更改为[ 8.27 9.39]

这是怎么回事?以及如何使用WXAgg获得正确的图形尺寸?

有关我的系统的一些信息:

  • 操作系统:macOS High Sierra 10.13.1
  • python:2.7.13
  • Matplotlib:2.2.3

0 个答案:

没有答案