plt.legend()如何使用
时间: 2023-04-09 13:00:26 浏览: 177
plt.legend() 是用于在 matplotlib 中添加图例的函数。它可以在图表中为每个数据系列添加标签,并将其显示在图例中。使用该函数,您可以指定标签的位置、字体大小、颜色等属性。例如,您可以使用以下代码添加图例:
import matplotlib.pyplot as plt
x = [1, 2, 3, 4]
y1 = [1, 3, 5, 7]
y2 = [2, 4, 6, 8]
plt.plot(x, y1, label='Line 1')
plt.plot(x, y2, label='Line 2')
plt.legend(loc='upper right', fontsize='small')
plt.show()
在这个例子中,我们使用 plt.plot() 函数绘制了两条线,并为它们分别指定了标签。然后,我们使用 plt.legend() 函数将这些标签添加到图例中,并指定了图例的位置和字体大小。最后,我们使用 plt.show() 函数显示图表。
相关问题
plt.legend怎么使用
plt.legend()函数用于为图表添加图例,以便更好地说明图表中的数据。下面是plt.legend()函数的使用方法和示例:
1. 在plt.plot()中添加label参数,然后在plt.legend()中调用即可显示图例。
```python
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y = [2, 4, 6, 8, 10]
plt.plot(x, y, label='linear')
plt.legend()
plt.show()
```
2. 在plt.legend()中使用handles和labels参数手动指定图例的内容和标签。
```python
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y1 = [2, 4, 6, 8, 10]
y2 = [1, 3, 5, 7, 9]
l1, = plt.plot(x, y1, color='red', label='line 1')
l2, = plt.plot(x, y2, color='blue', label='line 2')
plt.legend(handles=[l1, l2], labels=['red line', 'blue line'], loc='best')
plt.show()
```
3. 在plt.legend()中使用loc参数指定图例的位置。
```python
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y1 = [2, 4, 6, 8, 10]
y2 = [1, 3, 5, 7, 9]
plt.plot(x, y1, color='red', label='line 1')
plt.plot(x, y2, color='blue', label='line 2')
plt.legend(loc=0)
plt.show()
```
plt.legend函数详解
`plt.legend()` 是 Matplotlib 库中的一个函数,用于创建图例(Legend),它是数据可视化中非常重要的元素之一,帮助读者理解图表中的各个曲线代表了哪些数据系列。以下是 `plt.legend()` 函数的一些关键用法:
1. **基本使用**:
```python
ax = plt.plot(x, y1, label='Series1')
ax.plot(x, y2, label='Series2')
plt.legend() # 默认放置在右上角
```
这里通过 `label` 参数给每个数据系列指定标签,然后直接调用 `plt.legend()` 就会自动显示图例。
2. **自定义位置**:
```python
plt.legend(loc='best') # 自动选择最优位置
plt.legend(loc='upper left') # 指定图例的位置,如左上角
```
`'loc'` 参数可以接受多种字符串选项,如 'upper right', 'lower center', 等等。
3. **添加图例到特定坐标轴**:
```python
fig, (ax1, ax2) = plt.subplots(1, 2)
ax1.plot(...).legend()
ax2.plot(...).legend(loc='lower center')
```
如果你有多个子图,可以在每个子图上单独设置图例。
4. **调整样式**:
```python
legend = plt.legend(title='Temperature', fontsize=14, framealpha=0.5)
```
可以设置标题、字体大小、透明度等属性。
5. **管理图例项**:
```python
handles, labels = ax.get_legend_handles_labels()
plt.legend(handles[::-1], labels[::-1]) # 反转图例顺序
```
你可以获取当前图例的所有把手(handle)和标签(label),然后根据需要修改它们。
阅读全文