matplotlib画带复选框的折现
时间: 2023-10-29 16:55:50 浏览: 124
您可以使用Matplotlib的`Checkbutton`组件来实现带有复选框的折线图。下面是一个简单的示例代码:
```python
import matplotlib.pyplot as plt
from matplotlib.widgets import CheckButtons
# 构造数据
x = [1, 2, 3, 4, 5]
y1 = [1, 4, 9, 16, 25]
y2 = [1, 2, 3, 4, 5]
# 创建图表
fig, ax = plt.subplots()
# 绘制折线图
line1, = ax.plot(x, y1, label='Line 1')
line2, = ax.plot(x, y2, label='Line 2')
# 设置复选框位置
rax = plt.axes([0.05, 0.4, 0.1, 0.15])
check = CheckButtons(rax, ['Line 1', 'Line 2'], [True, True])
# 更新图表显示
def update(val):
line1.set_visible(check.get_status()[0])
line2.set_visible(check.get_status()[1])
plt.draw()
check.on_clicked(update)
plt.show()
```
这段代码会创建一个带有两条折线的图表,并在图表左侧创建了两个复选框,分别对应于每条折线。默认情况下,两条折线都是可见的。当您点击复选框时,对应的折线的可见性将会改变,从而实现显示或隐藏的效果。
阅读全文