Python 如何在matplotlib图的顶部创建用户创建的文本框?

Python 如何在matplotlib图的顶部创建用户创建的文本框?,python,matplotlib,pyqt5,interactive,annotate,Python,Matplotlib,Pyqt5,Interactive,Annotate,背景 我正在使这个软件正确地绘制数据,如箱线图和散点图。为了使图表更具信息性和清晰性,我希望用户能够在他们想要添加注释的情况下在图表顶部拖动并创建一个文本框。这样,当人们分享这个数字时,可以通过这些注释来解释 当前方法和问题 我使用annotate函数在屏幕右上角创建了一个文本框,告诉用户使用了多少数据点,但是这种方法没有什么问题 这是我用来创建一个文本框来告诉用户有多少数据的代码 self.axes.text(.98, .98, 'Number of Data Points: {}'.form

背景

我正在使这个软件正确地绘制数据,如箱线图和散点图。为了使图表更具信息性和清晰性,我希望用户能够在他们想要添加注释的情况下在图表顶部拖动并创建一个文本框。这样,当人们分享这个数字时,可以通过这些注释来解释

当前方法和问题

我使用annotate函数在屏幕右上角创建了一个文本框,告诉用户使用了多少数据点,但是这种方法没有什么问题

这是我用来创建一个文本框来告诉用户有多少数据的代码

self.axes.text(.98, .98, 'Number of Data Points: {}'.format(len(self.cleanedY)),
                   verticalalignment='top', horizontalalignment='right',
                    transform=self.axes.transAxes,
                   color='black', fontsize=9.5)
  • 必须向用户请求的大量输入。这包括位置坐标、实际文本框、对齐类型
  • 我知道如何收集这些信息的唯一方法是创建一个Qdialog窗口来提示所有这些输入,这太麻烦了
  • 用户无法自由定位文本框,必须知道精确的小数才能将文本框定位在图形上
  • 这是难以置信的低效和僵化。我想为用户提供一种在绘图图上轻松创建这些注释的方法


    TLDR:有没有办法在绘图图形上开发一个简单的拖放和创建文本框选项?

    我不确定这是否是您想要的,但我在网上找到了类似的示例。它不允许用户创建文本框,但可以向图形添加注释,并允许您四处移动它们

    这是链接


    这个问题本身太宽泛了。清楚地解释你想要完成什么,以及是什么阻止你实现它。它也可能是的一个复制品。使用tkinter,我使用pyqt,他们使用的正是我试图避免的方法。使用单独的弹出窗口提示用户输入。相反,我希望用户能够左键单击并拖动类似于Microsoft word的文本框。是否希望用户键入任何内容?似乎这个问题不仅过于宽泛,而且还不清楚。不知道困惑是从哪里来的。我希望用户能够在文本框中键入他们的注释,该文本框可以通过左键单击和拖动创建。类似于microsoft word文档中的功能。谢谢,这是我一直在寻找的!