【问题标题】:Read coordinates from mouse click in mpld3从 mpld3 中的鼠标单击读取坐标
【发布时间】:2023-03-28 14:57:01
【问题描述】:

我使用 mpld3 生成了一个图形并将其链接到 plugins.MousePosition() 以显示坐标,如下所示。

import numpy as np
import matplotlib
import matplotlib.pyplot as plt
import mpld3
from mpld3 import plugins, utils

x,y = np.random.rand(2,10)
fig, ax = plt.subplots()
ax.scatter(x,y,s=10,c='orange')

plugins.connect(fig, plugins.MousePosition())
mpld3.show()

鼠标位置报告在右下角,这意味着可以通过某种方式读取 x,y 坐标。有没有办法使用坐标信息基于鼠标单击和双击来绘制多边形?

【问题讨论】:

    标签: python matplotlib polygon interactive onmouseclick


    【解决方案1】:

    这是可能的,但您基本上必须在 d3/javascript 中创建一个简单的绘图程序,然后创建一个包含 javascript 实现的插件。

    我发现了一个可能对此主题感兴趣的论坛帖子:https://groups.google.com/forum/#!msg/d3-js/zRgsx65hpWg/ivR0xwMPQt8J

    【讨论】:

    • 谢谢@jakevdp。我通过首先在图中放置一个多边形(使用 LinkedDragPlugin 的修改版本实现)并让用户拖动和移动顶点来规避这个问题。这与创建和销毁多边形不同,但对于我想做的事情,即创建一个用于在后续 POST 请求上生成直方图的门,它工作正常。
    猜你喜欢
    • 2015-06-29
    • 1970-01-01
    • 2017-12-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-11
    • 2014-06-21
    相关资源
    最近更新 更多