拖动后获取点信息

2023-12-02

IPython Notebooks 中有用于交互式 matplotlib 绘图的令人惊叹的 mpld3。 mpld3 还具有插件功能。其中一个对我来说特别有趣:您可以在图中选择一个点并将其拖动 - 它如下所示:

http://mpld3.github.io/examples/drag_points.html.

链接中的源代码生成下面的图。 我想从我将点拖到的插件中返回信息。但我真的迷失在 javascript 部分以及如何从中获取信息。

Here I have dragged some points to new positions. I would like to get the information where to I have dragged them.


我对此感到好奇并想做类似的事情。这是我发现的。首先,我想知道鼠标坐标。为了能够读取坐标,我在drag_points.py中插入了以下“alert”语句,类似于“print”:

    var startx = 0;
    var starty = 0;
    function dragstarted(d) {
      d3.event.sourceEvent.stopPropagation();
      d3.select(this).classed("dragging", true);
      startx = obj.ax.x(d[0]);
      starty = obj.ax.y(d[1]);
    }
    var endx = 0;
    var endy = 0;
    function dragended(d) {
      d3.select(this).classed("dragging", false);
      endx = obj.ax.x(d[0]);
      endy = obj.ax.y(d[1]);
      alert(endx-startx);
      d3.select("input")
          .attr("value",endx-startx)
    }

单击并释放鼠标后,它会打开一个带有 x 行进距离的警报诊断。这允许访问坐标信息。

接下来,我测试了是否可以将此坐标信息动态编码到底层 html 中,从而允许进一步的后端处理。我了解到 d3.js 允许您修改 html 标签的内容。因此,我修改了 _display.py 中的“jinja templates”(与“plugins.py”位于同一目录中)。具体来说,我在模板中输入了以下内容:

<table width=300 height=200 border=5>
<tr>
  <form method="POST" action="/plot" class="">
  <input type="submit" name="submit" value="PLOT">
  </form>
</tr>
</table>

并修改了“drag_points.py”,以便将“input”值从“post”修改为endx-startx,而不是打开警报框。那是,

      d3.select("input")
          .attr("value",endx-startx)

最终结果是,当拖动并释放球时,警报框会显示 x 位移,并且该值用于更新“输入”按钮的值。如果使用输入按钮之外​​的其他标签来设置值,则应该可以利用下游的信息。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

拖动后获取点信息 的相关文章

  • Python 特征向量:numpy.linalg、scipy.linalg 和 scipy.sparse.linalg 之间的差异

    Scipy 和 Numpy 具有三个不同的函数来查找给定方阵的特征向量 它们是 numpy linalg eig a http docs scipy org doc numpy reference generated numpy linal
  • 如何为 chrome 和 ie favicon(加载指示器)设置动画

    我的 PM 有一个要求 将图标更改为动画加载图像 仅当我将 link href 指向 gif 文件时 它才适用于 Firefox 我做了一些研究 发现 chrome 不支持动画图标 但wiki https en wikipedia org
  • iter(fp.readline, '') 中的行而不是 fp 中的行:

    我读了内置函数iter的例子在内置函数 Python 3 7 0 文档 https docs python org 3 library functions html iter with open mydata txt as fp for l
  • 按位非运算符

    为什么要按位运算 0 打印 1 在二进制中 不是0应该是1 为什么 你实际上很接近 在二进制中 不是0应该是1 是的 当我们谈论一位时 这是绝对正确的 然而 一个int其值为0的实际上是32位全零 将所有 32 个 0 反转为 32 个 1
  • Pygame 旋转射击

    我和几个朋友一直在编写一种有趣的新射击机制 为了让它发挥作用 我们需要朝玩家面对的方向射击 Sprite 正在使用 Pygame Transform Rotate 进行旋转 我们怎样才能找到一个角度 然后朝那个方向发射子弹呢 这是我们的精灵
  • 在没有全局变量的情况下对多个事件使用 Promise 回调

    我有一个包含在函数中的承诺 我将使用不同的输入参数多次调用该函数 每次承诺解决时 我都会将解决的值推送到存储数组中 当我所有的调用承诺都得到解决后 我将在其他函数中使用这个存储数组 是否有任何干净的方法可以在不使用 全局 变量的情况下进行设
  • 从 Java 调用 Python 代码时出现问题(不使用 jython)

    我发现这是从 java 运行 使用 exec 方法 python 脚本的方法之一 我在 python 文件中有一个简单的打印语句 但是 我的程序在运行时什么也没做 它既不打印Python文件中编写的语句 也不抛出异常 程序什么都不做就终止了
  • NLTK 无法找到 stanford-postagger.jar!设置CLASSPATH环境变量

    我正在开发一个项目 需要我使用 nltk 和 python 来标记令牌 所以我想用这个 但遇到了一些问题 我浏览了很多其他已经提出的问题和其他论坛 但我仍然无法解决这个问题 问题是当我尝试执行以下命令时 from nltk tag impo
  • Pandas 对 HDFStore 中的大数据进行“分组”查询?

    我有大约 700 万行HDFStore有60多个柱子 数据超出了我的记忆能力 我希望根据 A 列的值将数据聚合到组中 pandas 的文档分割 聚合 组合 http pandas pydata org pandas docs stable
  • 在类方法 Python 中调用多处理

    最初 我有一个类来存储一些处理后的值 并通过其他方法重用这些值 问题是当我尝试将类方法划分为多个进程以加速时 python 生成了进程 但它似乎不起作用 正如我在任务管理器中看到的那样 只有 1 个进程在运行 并且结果从未传递 我做了几次搜
  • 如何检查 URL 末尾是否有特定字符串

    我需要根据 URL 末尾的内容让覆盖层向下滑动 如果 URL 末尾有 faq 覆盖层下降 如何在 jQuery JavaScript 中做到这一点 如果您的网址看起来像这样http yourdomain com faq 你可以这样做 var
  • 如何使用 BeautifulSoup 只抓取可见的网页文本?

    基本上 我想用BeautifulSoup严格抓住可见文字在网页上 例如 这个网页 http www nytimes com 2009 12 21 us 21storm html是我的测试用例 我主要想获取正文 文章 甚至可能到处都有一些选项
  • 函数调用中的星号[重复]

    这个问题在这里已经有答案了 我正在使用 itertools chain 以这种方式 展平 列表列表 uniqueCrossTabs list itertools chain uniqueCrossTabs 这与说有什么不同 uniqueCr
  • 如何在 C# 中通过 JavaScript 回调运行 QUnit 测试并获取测试结果?

    在我的几个项目中 我使用 MVC 模式将代码 关注点 分为 3 层 模型层和控制层都在 C 上运行 因此我使用 MSTest 或 NUnit 等测试框架来验证这些层的功能需求 对于视图层 我使用 QUnit 来测试 JavaScript 文
  • 如何使用 Browserify 获取 html 模板

    我正在尝试找出一种简单的方法 在脚本中需要 html 模板 然后从 CLI 运行 browserify 假设我想获取一个模板并将其附加到正文中 index js var template require template html docu
  • 计算列表中的子列表

    L 2 4 5 6 2 1 6 6 3 2 4 5 3 4 5 我想知道任意子序列出现了多少次 s 2 4 5 例如会返回2次 I tried L count s 但它不起作用 因为我认为它期望寻找类似的东西 random numbers
  • WTforms 表单未提交但不输出验证错误

    我正在尝试使用以下方式上传文件flask uploads工作和遇到一些障碍 我会告诉你我的flask查看函数 html 希望有人能指出我缺少的内容 基本上发生的情况是我提交了表格但失败了if request method POST and
  • 在 kivy 中嵌套小部件

    我正在尝试在 kivy 中制作一个界面 我认为即使在完成教程之后 我仍然不了解自定义小部件以及如何对它们进行层次结构的一些基本知识 我认为我有更多的盒模型 html 思维方式 因此小部件嵌套在本机 GUI 中的方式对我来说仍然有点陌生 一些
  • 使用 Python PuLP 混合整数规划的时间限制

    我一直在使用PuLP http pythonhosted org PuLP 解决我感兴趣的特定混合整数线性规划 MIP 但是 随着问题规模的增长 PuLP 花费的时间太长 我希望能够运行求解器一段时间 并在需要很长时间的情况下提前终止它 并
  • Pepper Robot:如何将 Python 地标检测移植到 Choregraphe?

    我正在尝试编写一个小程序 让 Pepper 通过 Choregraphe 检查房间内的地标 用于地标检测的常规 Python 代码工作得很好 但我无法将其移植到 Choregraphe http doc aldebaran com 2 5

随机推荐

  • 使用 GWT JsInterop 实现 Javascript 函数回调

    我想包装这样的 JavaScript 代码 map addMarker lat 12 043333 lng 77 028333 draggable true fences polygon outside function m f alert
  • 如何打印使用 iText 创建的 PDF?

    您好 我已经创建了一个包含图像的 PDF 文件 我想在创建后打印我的 pdf 如果我在内存中保存 PDF 而不是文件 然后将其发送到打印机 那就更好了 有什么想法吗 我正在使用 iText 检查我的代码 import com lowagie
  • Jenkins 无法连接到 gerrit 存储库(Windows 安装)

    我在 Stackoverflow 和 google 上查看了很多 但无法解决我的问题 My aim 我想设置 Jenkins 使用 git SCM 通过 gerrit 克隆存储库主机 我的詹金斯配置 Jenkins 版本 2 7 1 在 W
  • matlab中如何提取矩阵元素? [复制]

    这个问题在这里已经有答案了 可能的重复 MATLAB 将向量元素分配给各个变量的最简单方法 如何在 MATLAB 中进行多重赋值 如果我有一个矩阵 A 1 5 10 我设置a1 A 1 b1 B 1 等在一条线上 我想做类似的事情 a1 a
  • 有什么办法可以克服 URL 长度 2k 字符的限制吗?

    我认为URL长度只能是2000个字符左右 否则会卡住某些版本的IE 有什么办法可以克服这个问题吗 起初我想到的是tinyurl 但tinyurl实际上立即重定向到更长的URL 所以这可能也会失败 Update 我需要这么长的 URL 因为我
  • R:将数据框中的分数转换为小数

    我正在尝试将以分数形式存储为字符的数字数据帧转换为以十进制形式存储的数字 还有一些整数 也存储为字符 我想保留数据帧的当前结构 即我不想要一个列表作为结果 示例数据框 注意 真实的数据框将所有元素作为字符 这里它是一个因素 但我不知道如何复
  • .NET 有效属性名称

    NET 中有效属性名称的文档在哪里 显然 诸如空格 或 之类的内容在属性名称中无效 但是这些内容记录在哪里 您可以在平台上查找特定语言的信息 以下是一些 C 语言 VB语言 进一步来说 C 属性声明
  • 我想要一个 AJAX 文件上传器,例如 Gmail 文件上传,带有 PHP 进度条

    我想要一个 AJAX 文件上传器 就像您上传用 PHP 编写的文件 带有进度条 时在 Gmail 中显示的那样 有人有主意吗 Thanks 你可以使用这个插件 http aquantum demo appspot com file uplo
  • “位置:粘性;”如何实现?物业工作?

    我想让导航栏在用户滚动页面后粘在视口的顶部 但它不起作用 我不知道为什么 如果您能帮忙 这里是我的 HTML 和 CSS 代码 container min height 300vh nav selections text transform
  • Android Studio 如何创建一个新线程?

    我有以下片段类 public class fragment1 extends Fragment private TextView bunz count private TextView money count private Bunz bu
  • jQuery mouseup 没有被正确检测到

    我有一个包含跨度的 div 我有一个 mouseup 和 mousedown 事件 在按下 div 时应该触发 但是它无法正常工作 请转到这个小提琴 http jsfiddle net Ym7rM 如果您选择文本然后尝试拖动它 它只会检测到
  • 根据 Selenium Python 中的值单击按钮元素

    有如下 HTML 代码
  • HttpServerUtility.UrlTokenDecode 似乎只返回 null

    我似乎遇到了问题HttpServerUtility UrlTokenDecode string 因为它不断返回null 导致程序崩溃 根据我收集的信息 此方法会将字符串转换为其 base64 字节数组 不幸的是 该代码的原始开发人员已不在我
  • 无法发送具有此动词类型的内容主体

    我刚刚在 NET 2 0 应用程序 在 Windows Mobile 6 标准模拟器上运行 中遇到此异常 ProtocolViolationException 让我感到困惑的是 据我所知 我没有添加任何内容主体 除非我无意中以某种方式添加了
  • 将 Linux 系统时钟同步到 Windows NTP 服务

    我有一台 Linux PC 作为时钟客户端 我想使用 ntpdate 将此 PC 的时间与同一网络上同一空间中的 Windows PC 同步 我无法找到如何做到这一点 尽管我认为 Windows 时间服务是一个 NTP 服务器 但这并不像调
  • React Native:根据 Fetch(Url) 请求生成按钮元素列表的最佳方法是什么?

    我想制作一个用户可以点击的按钮元素列表 按钮元素的数量将在 3 5 个之间变化 具体取决于我执行的获取请求的结果 我知道如何根据获取请求的结果填充平面列表 但不知道按钮的内容 有什么帮助吗 例如 使用这个 JSON 假设我想为其中的电影数量
  • 将 Excel 文件读入 Access 数据库的最佳方法

    从 Access 2007 应用程序中读取 仅读取 Excel 文件的 最佳 方法是什么 我只想循环遍历行并将数据放入 Access 表中 我不想手动导入 获取外部数据 对话框 而是通过 VBA 进行导入 用户获得一个带有 浏览 按钮的表单
  • 为 nginx 服务器转换的 Apache 身份验证规则

    请帮我将这些 httacces 规则从 apache 转换为 nginx 规则 RewriteCond HTTP Authorization RewriteRule E HTTP AUTHORIZATION 1 SetEnvIf Autho
  • C++ 将字符串文字添加到字符文字

    我有一个关于 C 中字符串连接的问题 string str ab c cout lt lt str lt lt endl char ch c string str1 ab string str2 str1 ch cout lt lt str
  • 拖动后获取点信息

    IPython Notebooks 中有用于交互式 matplotlib 绘图的令人惊叹的 mpld3 mpld3 还具有插件功能 其中一个对我来说特别有趣 您可以在图中选择一个点并将其拖动 它如下所示 http mpld3 github