由于某种原因,这段代码创建的图形只是标准尺寸:它不会改变高度或宽度(我选择宽度和高度是荒谬的,以清楚地说明问题):
import matplotlib.pyplot as plt
fig = plt.figure()
fig.set_figwidth(30)
fig.set_figheight(1)
print('Width: {}'.format(fig.get_figwidth()))
plt.show()
Run Code Online (Sandbox Code Playgroud)
我正在运行OSX 10.10.4,Python 3.4.3,Matplotlib 1.4.3.(通过Macports安装.)任何想法?我错过了什么?
可选参数forward将更改传播到已存在的GUI窗口中的画布.
可选的kwarg
forward=True将导致画布大小自动更新; 例如,您可以从shell调整图形窗口的大小
使用Figure(figsize=(w,h))也有效.
forward=True对于所有三个的缺省set_figheight,set_figwidth和set_size_inches(set_size_inches变化高度和宽度同时使用).
forward=True必须明确指定,因为它是False默认情况下.(在Matplotlib 2.0.0,默认更改为True 只对set_size_inches).
forward仅受支持set_size_inches.
set_figheight并且set_figwidth不支持此参数,因此仅更改预先创建的GUI的单个维度有点困难.
我不确定为什么这些记录的函数不起作用,但它们已在下一个 matplotlib 版本(> v1.4.3)中修复。作为下一个版本之前的解决方法,替换set_figwidth并set_figheight解决此问题。
import matplotlib.pyplot as plt
fig = plt.figure()
# Instead of set_figwidth(30)
fig.set_size_inches(30, fig.get_figheight(), forward=True)
plt.show()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8302 次 |
| 最近记录: |