python matplotlib实现将图例放在图外

python matplotlib实现将图例放在图外

在使用matplotlib进行数据可视化时,图例是非常重要的组成部分。通常情况下,图例会默认显示在绘图的区域内,但有时我们希望将图例放在绘图区域外,以便更好地展示数据。本文将介绍如何使用Python的matplotlib库将图例放在图外。

1. 创建一个简单的图表

首先,让我们创建一个简单的图表来演示如何将图例放在图外。假设我们有一些样本数据,要绘制它们的散点图。以下是一个示例代码:

import numpy as np

import matplotlib.pyplot as plt

# 生成样本数据

x = np.random.rand(100)

y = np.random.rand(100)

# 绘制散点图

plt.scatter(x, y, label='Samples')

# 显示图例

plt.legend()

# 显示图表

plt.show()

运行上述代码,将会得到一个包含散点图的窗口。图例默认位于绘图区域内,以便于观察数据。

2. 将图例放在图外

现在我们来看看如何将图例放在图外。在matplotlib中,我们可以使用legend函数的loc参数来指定图例的位置。loc参数接受一个字符串或整数,用于指定图例的位置。

以下是一些常用的图例位置的值:

'best':选择最佳位置,通常位于图表的右上角

0:不显示图例

1:图例显示在图表的右上角

2:图例显示在图表的左上角

3:图例显示在图表的左下角

4:图例显示在图表的右下角

5:图例显示在右中位置

6:图例显示在左中位置

7:图例显示在下中位置

对于将图例放在图外的需求,我们可以选择7,将图例放在图表的下中位置。修改代码如下:

import numpy as np

import matplotlib.pyplot as plt

# 生成样本数据

x = np.random.rand(100)

y = np.random.rand(100)

# 绘制散点图

plt.scatter(x, y, label='Samples')

# 显示图例并将图例放在图外

plt.legend(loc=7, bbox_to_anchor=(0.5, -0.15), ncol=2)

# 显示图表

plt.show()

在上述代码中,我们通过设置legend函数的loc参数为7将图例放在图表的下中位置。另外,我们使用bbox_to_anchor参数来进一步控制图例的位置,其中(0.5, -0.15)表示图例的x和y坐标,ncol参数表示图例的列数。

运行修改后的代码,我们会发现图例已经被放置在图表下方的中间位置,这样可以更好地展示数据。

总结

本文介绍了如何使用Python的matplotlib库将图例放在图外。通过使用legend函数的loc参数,我们可以轻松地指定图例的位置。通过进一步设置bbox_to_anchor参数,我们可以进一步调整图例的位置和布局。以上的示例代码演示了将图例放在图表下方的中间位置。你也可以根据需要来调整图例的位置。

免责声明:本文来自互联网,本站所有信息(包括但不限于文字、视频、音频、数据及图表),不保证该信息的准确性、真实性、完整性、有效性、及时性、原创性等,版权归属于原作者,如无意侵犯媒体或个人知识产权,请来电或致函告之,本站将在第一时间处理。猿码集站发布此文目的在于促进信息交流,此文观点与本站立场无关,不承担任何责任。

后端开发标签