相关疑难解决方法(0)

D3 Canvas图形缩放和平移Webview中的慢速重绘

我有一个在Canvas中实现的d3图。图形性能在Chrome中很棒,但是当我使用Ionic(webview)部署它时,缩放和平移重绘在android上确实非常惊人,而在iOS上甚至更慢。

我最初是使用SVG开发该图的,但是在确信画布可以更平滑地运行之后切换到了画布。

设定码

的HTML

<ion-header>
  <ion-navbar>
    <ion-title>
      Ionic Blank
    </ion-title>
  </ion-navbar>
</ion-header>

<ion-content padding>
    <canvas width="300" height="300"></canvas>
</ion-content>
Run Code Online (Sandbox Code Playgroud)

画布初始化

  mode = 'monthly';

  canvas = document.querySelector("canvas");
  context = canvas.getContext("2d");

  margin = { top: 20, right: 20, bottom: 30, left: 50 },
      width = canvas.width - margin.left - margin.right,
      height = canvas.height - margin.top - margin.bottom;

  var parseTime = d3.timeParse("%d-%b-%y");

  // setup scales
  x = d3.scaleTime()
      .range([0, width]);
  x2 = d3.scaleTime().range([0, width]);
  y = d3.scaleLinear()
      .range([height, 0]);

  // setup domain
  x.domain(d3.extent(data, function …
Run Code Online (Sandbox Code Playgroud)

javascript canvas d3.js ionic-framework ionic2

5
推荐指数
0
解决办法
526
查看次数

标签 统计

canvas ×1

d3.js ×1

ionic-framework ×1

ionic2 ×1

javascript ×1