在 Plotly 中用新数据更新图形的高性能方法?

2024-02-29

我想使用每个条形值的滑块来更新条形图。但是,我希望条形动态变化as滑块发生变化。我已经实现了这个使用oninput。目前,我有以下内容,这是相当滞后的。

HTML

<head>
    <!-- Plotly.js -->
    <script src="https://cdn.plot.ly/plotly-latest.min.js"></script>
</head>

<body>
    <h1> Plotly Test</h1>
    <div id="PlotlyTest" style="width: 480px; height: 400px;"><!-- Plotly chart will be drawn inside this DIV --></div>

    <p> Adjust Value 1</p>
    <form oninput="amount.value=rangeInput.value">
        <input type="range" id="rangeInput" name="rangeInput" min="0" max="100" value="get_min() " oninput="adjustValue1(this.value)">
        <output name="amount" for="rangeInput"></output>
    </form>

    <script src="functionality.js"></script> 
</body>

JS

var data = [{
    x: ['VALUE 1'], // in reality I have more values...
    y: [20],
    type: 'bar'
}];
Plotly.newPlot('PlotlyTest', data);

function adjustValue1(value)
{
    data[0]['y'][0] = value;
    Plotly.redraw('PlotlyTest');
}

根据this https://plot.ly/javascript/plotlyjs-function-reference/#plotly-redraw, using Plotly.redraw不是最快的方法。但那是什么?


我很快就把它放在一起(嗯,花了很大的努力才找到如何做到这一点;我刚刚修改了我所做的一些工作以适应这个答案)。这Plotly.animate()据我所知,函数是更新跟踪的最快方法。

update = {
    x: data[0].x,
    y: data[0].y,
    opacity: 1 // You can do things like change the opacity too
};

Plotly.animate(div="graph", {
    data: update,
    traces: [0], /* With a bit of work, you can list any other traces you
         want to update too (e.g. make a for loop over trace++ and set
         update[trace] at each iteration) */
    layout: {}
}, {
    // These 2 make sure the plot updates as quickly as possible:
    transition: {duration: 0},
    frame: {duration: 0, redraw: false}
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Plotly 中用新数据更新图形的高性能方法? 的相关文章

随机推荐

  • 从 Numpy 中的多个切片中选择

    说我们有 a np ones 3 3 3 and slices 0 1 slice None 0 slice None 0 slice None 1 0 有没有一种简单的方法来选择 更改值a from slices 例如 我想分配0 to
  • 在 JSF 中向 selectOneMenu 添加“未选择任何内容”选项的最佳方法

    我想知道允许用户在 selectOneMenu 中不选择任何内容的最佳或最简单的方法是什么 我的示例 我有一个注册用户列表 管理员应该能够按某些条件过滤显示的用户列表 这些标准 例如用户类型 员工 客户 可以通过 selectOneMenu
  • Twitter bootstrap .popover 不工作

    我正在尝试让 Twitter Bootstrap 的 popover 工作 并且我几乎复制了我网站上的代码 但它告诉我 Object object object 在检查元素上没有方法 popover 我在 bootstrap tooltip
  • 根据另一列中的值创建新的指标列

    我有一些数据看起来像这样 import pandas as pd fruits apple pear peach df pd DataFrame col1 i want an apple i hate pears please buy a
  • PHP Doctrine 初学者:Doctrine\ORM\Tools\Setup 未找到

    我是教义的初学者 我刚刚安装了 pear 主义 2 3 3 并想测试它 为了测试教义 我写了一个名为 person 的类 Entity class person Id Column type integer GeneratedValue p
  • Scala:用于未来理解的 ExecutionContext

    当我做一个future 或应用类似的方法onSuccess and map 我可以为它们指定 ExecutionContext 例如 val f future code executionContext f map someFunction
  • 防止 pandoc 将 $ 转换为 mediawiki

    我正在使用 pandoc 将 markdown 文件转换为 mediawiki 表 文件内容mtcars md c1 c2 7 P A A 8 AB B 9 P A C 然后我就这样做了 我使用的是 Ubuntu 64 位和 pandoc
  • 在 Objective-C/cocoa 中抛出异常

    在 Objective C cocoa 中抛出异常的最佳方法是什么 I use NSException raise format 如下 NSException raise Invalid foo value format foo of d
  • 为什么我的 SVG 在 Polymer 组件内由 D3 渲染,没有样式?

    这里有一个Plunker我的问题的草图 http plnkr co 7hW5Rp71Qy1IwptZx4i6 相关代码 包含 Polymer 模板及其调用
  • Kendo UI 网格在调用读取后未填充

    好吧 我还有另一个 我确信我又错过了一些简单的东西 使用 json 结果集填充 Kendo 网格 加载是通过从剑道下拉列表控件中进行选择来触发的 我可以看到数据从我的 webapi 返回并转换为 json 结果 但数据未显示在网格中 我错过
  • 避免以编程方式启动使用创建的上下文的 HiveThriftServer2

    在 Spark 2 0 0 中 我们尝试使用 ThriftServer 从 Spark 临时表中查询数据 首先 我们创建了启用了 Hive 支持的 SparkSession 目前 我们使用 sqlContext 启动 ThriftServe
  • 轨道模型和独特的组合

    我有一个 Rails 应用程序 其中有一个名为friendrequests 它看起来像这样 user1 id integer user2 id integer hasaccepted boolean 我正在创建一个添加好友的选项 但好友请求
  • C++派生类型的自动工厂注册

    像我之前的许多人一样 我正在尝试让我的派生类型自动向我的工厂注册 我通读了很多问题 并试图专注于我在那里没有找到的问题 除了自动注册之外 一切都运行良好 我的目标 automatically register any derived cla
  • PHP语言规范中“[”怎么会是运算符呢?

    On the http php net manual en language operators precedence php http php net manual en language operators precedence php
  • 不带 @XMLRootElement 的 JAXB 部分解组元素

    我正在使用部分解组的例子JAXB 但我无法解组不在根级别的 XML 元素 因为它们没有 XmlRootElement 标记 在我的示例中 我尝试读取shipTo Element而不是purchaseOrder Element 通常我会使用
  • 将日期附加到使用 Sweave 生成​​的 PDF

    我通过 Sweave 生成 每日报告 我想在 PDF 名称中附加当前日期 格式为 YYYYMMDD 我使用以下代码来生成文件 rnwfile lt system file Sweave Margin Rnw package utils Sw
  • 如何在 Django 中记录成功和失败的登录和注销尝试?

    我想在 Django 中记录所有用户登录和注销尝试 该记录应显示所有登录 注销用户的历史记录 IP 地址和登录 注销时间 The django admin log表似乎只记录其他模型的ADD DELETE CHANGE活动 而不是用户访问的
  • 简单来说,什么是工厂?

    什么是工厂 我为什么要使用工厂 你熟悉吗JDBC https docs oracle com javase tutorial jdbc basics index html 这是一个完整的 抽象 工厂 这是一个很好的现实世界例子 Factor
  • 更改数据库模式和单元测试

    在我们开始之前 我知道有相当多的人认为访问数据库的测试不是 单元测试 也许 集成测试 是一个更好的名字 无论哪种方式 开发人员都会测试数据库 为了启用单元测试 我有一个开发人员本地数据库 我会在每次测试开始时清除该数据库并填充一组已知的数据
  • 在 Plotly 中用新数据更新图形的高性能方法?

    我想使用每个条形值的滑块来更新条形图 但是 我希望条形动态变化as滑块发生变化 我已经实现了这个使用oninput 目前 我有以下内容 这是相当滞后的 HTML h1 Plotly Test h1 div style width 480px