我正在使用 matplotlib.pyplot 绘制直方图,并且我想增加图表的大小。要绘制的代码是:
plt.hist(x)
plt.xlabel("Months")
plt.ylabel("Donated")
plt.figure(figsize=(6,4))
plt.show()
但是plt.figure(..)对图形的大小没有任何影响。我正在使用Spyder IDE。
答案 0 :(得分:2)
只需将其放在顶部:
plt.figure(figsize=(10,20))
plt.hist(x)
plt.xlabel("Months")
plt.ylabel("Donated")
plt.show()
答案 1 :(得分:2)
您想在创建绘图信息之前定义图形空间。
<div class="row">
<?php
foreach ($rows as $row){
?>
<div class="col-lg-4 col-sm-4 col-6">
Your content
</div>
<?php } ?>
</div>
这将定义您的图形,然后在该空间中绘制信息,否则Matplotlib将使用默认值。
答案 2 :(得分:0)
在matplotlib中,如果我们计划对非默认图形尺寸使用任何pyplot函数,则必须首先创建图形。
plt.figure(figsize=(6,4)) ## New figure
plt.hist(x)
plt.xlabel("Months")
plt.ylabel("Donated")
plt.show()
在docs中,“每个pyplot函数都会对图形进行一些更改”,并且默认情况下会创建一个图形来放置所有pyplot更改。
利用函数gca()返回当前轴(一个matplotlib.axes.Axes实例),并使用gcf()返回当前图形(matplotlib.figure.Figure实例)
print(plt.gcf()) # Figure(432x288) default
plt.figure(figsize=(10,20)) # --> (1)
plt.hist(x)
plt.xlabel("Months")
plt.ylabel("Donated")
print(plt.gcf()) # Figure(720x1440) from (1)
plt.figure(figsize=(20,20)) # --> (2)
print(plt.gcf()) # Figure(1440x1440) from (2)