📜  Python中的 Matplotlib.pyplot.ginput()(1)

📅  最后修改于: 2023-12-03 15:04:32.511000             🧑  作者: Mango

Python中的 Matplotlib.pyplot.ginput()

在数据分析和可视化方面,Matplotlib是一个非常流行的Python库。其中,matplotlib.pyplot是Matplotlib的子模块,提供了绘制图形的函数。

Matplotlib.pyplot.ginput()是Matplotlib.pyplot中的一个交互式函数,它可以在绘制的图形上等待用户点击,返回用户点击的坐标数据。

语法

Matplotlib.pyplot.ginput(n=1, timeout=30, show_clicks=True, mouse_add=1, mouse_pop=3, mouse_stop=2)

参数说明:

  • n:等待输入的次数,默认为1。
  • timeout:等待输入的时间,单位为秒。默认为30秒。
  • show_clicks:是否在图形上绘制点击标记。
  • mouse_add:指定添加点击标记的鼠标按键。默认为1,即左键。
  • mouse_pop:指定移除点击标记的鼠标按键。默认为3,即右键。
  • mouse_stop:指定停止等待输入的鼠标按键。默认为2,即中键。
返回值

Matplotlib.pyplot.ginput()函数返回一个包含用户点击坐标的列表。列表的长度等于n。

示例
import matplotlib.pyplot as plt

fig, ax = plt.subplots()
ax.plot([1, 2, 3, 4], [1, 4, 2, 3])

plt.title('Click to pick points')
plt.xlabel('x')
plt.ylabel('y')

# 等待用户点击两次
points = plt.ginput(2)

plt.show()

print('User clicked these points:', points)

运行上述代码,将会弹出一个可交互的图形窗口。在图形窗口上,单击两次鼠标左键,程序将会输出用户点击的坐标数据。

返回值:

User clicked these points: [(1.1363636363636365, 1.2156862745098037), (2.4318181818181817, 3.2549019607843137)]

可以看到,返回的是一个包含两个坐标的列表,分别表示用户点击的两个点的坐标。

参考文献: