如何改变使用Matplotlib绘制的图形的大小

如何改变使用Matplotlib绘制的图形的大小

在这个教程中,我们将讨论如何在Python中使用Matplotlib调整创建的图形的大小。Matplotlib库广泛用于创建图形。

介绍

Matplotlib用于创建代表数据的图形很受欢迎。我们可以用各种类型的数据填充图形,包括轴、图形绘制、几何形状等。我们可以对Matplotlib生成的图形执行各种操作,其中调整大小是一项常见任务。有时,我们需要将图形的大小设置为特定的大小。图形可以更宽、更高等。

matplotlib.figure() 提供了 figsize 属性,用于指定图形的宽度和高度,单位为英寸。让我们理解以下语法。

语法:

import matplotlib.pyplot as plt
figure_name = plt.figure(figsize=(width, height))

figsize是figure()方法的可选参数。默认情况下,图的尺寸为(6.4, 4.8)。

一般情况下,每个英寸的单位为80 x 80像素。然而,我们可以通过dpi参数来改变每个英寸的像素数,该参数可以在同一函数中指定。

我们将按照以下步骤进行操作。

  • 我们将定义一个名为val_1的变量,并将其设置为plt.figure(figsize=(6,3))。
  • 它将创建一个宽度为6英寸,高度为3英寸的图形对象。
  • figsize属性具有一个包含2个值的元组。

让我们理解以下示例。

示例

# We start by importing matplotlib
import matplotlib.pyplot as plt

# Plotting a figure of width 6 and height 3
plot_1 = plt.figure(figsize=(6, 3))

# Let's plot the equation y=2*x
x = [1, 2, 3, 4, 5, 6,7]

# y = [2,4,6,8,10, 12, 14]
y = [x*2 for x in x]

# plt.plot() specifies the arguments for x-axis
# and y-axis to be plotted
plt.plot(x, y)

# To show this figure object, we use the line,
# fig.show()
plt.show()

输出:

如何改变使用Matplotlib绘制的图形的大小

示例2:

# importing matplotlib library
import matplotlib.pyplot as plt

# Now we plot a figure of width 7 and height 12
plt_1 = plt.figure(figsize=(2, 5))

# Using the equation y=3*x
x = [1, 2, 3, 4, 5]

# y = [3,8,27,64,125]
y = [x*2 for x in x]

# plt.plot() determines the arguments for
# x-axis and y-axis to be plotted
plt.plot(x, y)

# To show this figure object, we use the line,
# fig.show()
plt.show()

输出:

如何改变使用Matplotlib绘制的图形的大小

在以上代码中,我们将高度增大了,与宽度相比,并改变了图形的绘制。

我们还可以使用相同的方法设置子图的大小。让我们来理解下面的示例。

示例

import matplotlib.pyplot as plt

fig, axes= plt.subplots(nrows=2, ncols=1,figsize=(8,4))

x= [1,2,3,4,5]

y=[x**3 for x in x]

axes[0].plot(x,y)
axes[1].plot(x,y)

plt.tight_layout()

plt.show()

输出:

如何改变使用Matplotlib绘制的图形的大小

设置Matplotlib中图形的高度和宽度

我们也可以设置图形的高度和宽度,而不使用figsize参数。可以使用 set() 函数来完成,其中包含figheight和figwidth参数。也可以使用 set_figheight()set_figwidth() 函数来设置高度和宽度。

让我们来了解下面的示例。

示例

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0, 20, 0.2)
y = np.sin(x)
z = np.cos(x)

fig = plt.figure()

fig.set_figheight(4)
fig.set_figwidth(8)

# Adds subplot on position 1
ax = fig.add_subplot(121)
# Adds subplot on position 2
ax2 = fig.add_subplot(122)

ax.plot(x, y)
ax2.plot(x, z)
plt.show()

输出:

如何改变使用Matplotlib绘制的图形的大小

另一方面,我们也可以使用 set_size_inches() 。下面是一个示例。

示例2:

import matplotlib.pyplot as plt
import numpy as np

fig = plt.figure()

fig.set_size_inches(10, 5)

# Adds subplot on position 1
ax = fig.add_subplot(121)
# Adds subplot on position 2
ax2 = fig.add_subplot(122)

ax.plot(x, y)
ax2.plot(x, z)
plt.show()

输出:

如何改变使用Matplotlib绘制的图形的大小

修改图表

这是一种在不使用图形环境的情况下修改图表属性的方式。我们还可以更新matplotlib.rcParams,这是一个用于处理默认matplotlib值的RcParams实例。

让我们了解以下示例。

示例

import matplotlib.pyplot as plt
plt.rcParams['figure.figsize'] = (6, 12)
x = y = range(2, 20)
plt.plot(x, y)
plt.show()

输出:

如何改变使用Matplotlib绘制的图形的大小

结论

我们已经讨论了几种在matplotlib中改变图像大小的方法。这些图像对于数据可视化非常有用。您可以使用适合您要求的任何选项。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程