<tfoot id='28yCh'></tfoot>

<i id='28yCh'><tr id='28yCh'><dt id='28yCh'><q id='28yCh'><span id='28yCh'><b id='28yCh'><form id='28yCh'><ins id='28yCh'></ins><ul id='28yCh'></ul><sub id='28yCh'></sub></form><legend id='28yCh'></legend><bdo id='28yCh'><pre id='28yCh'><center id='28yCh'></center></pre></bdo></b><th id='28yCh'></th></span></q></dt></tr></i><div id='28yCh'><tfoot id='28yCh'></tfoot><dl id='28yCh'><fieldset id='28yCh'></fieldset></dl></div>

    <small id='28yCh'></small><noframes id='28yCh'>

    <legend id='28yCh'><style id='28yCh'><dir id='28yCh'><q id='28yCh'></q></dir></style></legend>

        • <bdo id='28yCh'></bdo><ul id='28yCh'></ul>

      1. 绘制更新数据

        时间:2023-09-30
        <i id='RDUdz'><tr id='RDUdz'><dt id='RDUdz'><q id='RDUdz'><span id='RDUdz'><b id='RDUdz'><form id='RDUdz'><ins id='RDUdz'></ins><ul id='RDUdz'></ul><sub id='RDUdz'></sub></form><legend id='RDUdz'></legend><bdo id='RDUdz'><pre id='RDUdz'><center id='RDUdz'></center></pre></bdo></b><th id='RDUdz'></th></span></q></dt></tr></i><div id='RDUdz'><tfoot id='RDUdz'></tfoot><dl id='RDUdz'><fieldset id='RDUdz'></fieldset></dl></div>

          • <legend id='RDUdz'><style id='RDUdz'><dir id='RDUdz'><q id='RDUdz'></q></dir></style></legend>

              <bdo id='RDUdz'></bdo><ul id='RDUdz'></ul>

                    <tbody id='RDUdz'></tbody>
                  <tfoot id='RDUdz'></tfoot>

                  <small id='RDUdz'></small><noframes id='RDUdz'>

                1. 本文介绍了绘制更新数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

                  问题描述

                  好的,我有以下代码:

                      var element = document.getElementById(scope.changeid);
                  
                  function getData(division,redraw) {
                      var employeeData = [];
                      if (!division) {
                          $http.get(api.getUrl('competenceUserAverageByMyDivisions', null)).success(function (response) {
                              processData(response,redraw);
                          });
                      }
                      else {
                          $http.get(api.getUrl('competenceUserAverageByDivision', division)).success(function (response) {
                              processData(response,redraw);
                          })
                      }
                  
                  }
                  
                  function processData(data,redraw) {
                      var y = [],
                          x1 = [],
                          x2 = [];
                  
                      data.forEach(function (item) {
                          y.push(item.user.profile.firstname);
                          x1.push(item.current_level);
                          x2.push(item.expected);
                      });
                  
                      var charData = [{
                              x: x1,
                              y: y,
                              type: 'bar',
                              orientation: 'h',
                  
                              name: 'Nuvrende'
                          }, {
                              x: x2,
                              y: y,
                              type: 'bar',
                              orientation: 'h',
                  
                              name: 'Forventet'
                          }],
                          layout = {
                              barmode: 'stack',
                              legend: {
                                  traceorder: 'reversed',
                                  orientation: 'h'
                  
                              }
                          };
                  
                      if(!redraw){
                          Plotly.plot(element, charData, layout);
                      }
                      else
                      {
                          Plotly.redraw(element,charData,layout);
                      }
                  }
                  
                  scope.$watch('divisionId', function (newValue, oldValue) {
                      if (newValue) {
                          getData(newValue.id,true);
                      }
                  }, true);
                  
                  getData(null,false);
                  

                  创建以下图表:

                  现在你可以看到我添加了一个 watcher

                  Now as you can see ive added a watcher

                              scope.$watch('divisionId', function (newValue, oldValue) {
                              if (newValue) {
                                  getData(newValue.id,true);
                              }
                          }, true);
                  

                  现在当我触发它时,它应该更新图表并调用 Plotly.redraw(element,charData,layout);

                  Now when i trigger this it should update the chart and call Plotly.redraw(element,charData,layout);

                  但是,当它这样做时,图表根本不会改变.控制台没有错误,所以我不太确定该怎么办?

                  However when it does this the chart does not change at all. There is no error in the console so i am not quite sure what to do?

                  推荐答案

                  我找到了问题的答案.

                  显然我需要使用:

                   Plotly.newPlot(element,charData,layout);
                  

                  而不是重绘

                  这篇关于绘制更新数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

                  上一篇:如何修复我的 Plotly Dash 应用程序组织不正确 下一篇:情节上任何地方的情节点击事件

                  相关文章

                  <tfoot id='GfK66'></tfoot>
                  <legend id='GfK66'><style id='GfK66'><dir id='GfK66'><q id='GfK66'></q></dir></style></legend>

                    <small id='GfK66'></small><noframes id='GfK66'>

                    • <bdo id='GfK66'></bdo><ul id='GfK66'></ul>
                  1. <i id='GfK66'><tr id='GfK66'><dt id='GfK66'><q id='GfK66'><span id='GfK66'><b id='GfK66'><form id='GfK66'><ins id='GfK66'></ins><ul id='GfK66'></ul><sub id='GfK66'></sub></form><legend id='GfK66'></legend><bdo id='GfK66'><pre id='GfK66'><center id='GfK66'></center></pre></bdo></b><th id='GfK66'></th></span></q></dt></tr></i><div id='GfK66'><tfoot id='GfK66'></tfoot><dl id='GfK66'><fieldset id='GfK66'></fieldset></dl></div>