antvis / my-f2

F2 的支付宝小程序版本
MIT License
146 stars 23 forks source link

【BUG】钉钉小程序渲染图表的比例不对 #60

Closed letica closed 4 years ago

letica commented 4 years ago

image

渲染出来的图表比例不对,且不能稳定复现,但是在 onInit 中打印config.pixelRatio 是正确的2或3。

代码如下:

<f2 onInit="onInit"></f2>

onInit(F2, config) {
      chart = new F2.Chart(config);
      this.updateChart();
      return chart;
},
updateChart() {
      const position = 'timeStr*value';
      const trendData = this.formatData();
      chart.source(trendData, {
        timeStr: {
          range: [0, 1],
          tickCount: 3,
        },
        value: {
          tickCount: 7,
          min: 0,
        },
      });
      chart.tooltip({
        showCrosshairs: true,
        layout: 'vertical',
        },
      });
      chart.axis('timeStr', {
        label(text, index, total) {
          const textCfg = {};
          if (index === 0) {
            textCfg.textAlign = 'left';
          } else if (index === total - 1) {
            textCfg.textAlign = 'right';
          }
          const nText = text.replace(' ', '\n');
          textCfg.text = trendData.length > 3 ? nText.replace('~', '~\n') : nText;
          return textCfg;
        }
      });
      const colors = ['#4278ff', '#03BBE4'];
      chart.area().position(position).color('type', colors).shape('smooth');
      chart.line().size(1).position(position).color('type', colors).shape('smooth');
      chart.point().position(position).color('type', colors).style({
        lineWidth: 1,
        stroke: '#fff'
      });
      chart.render();
    }
zengyue commented 4 years ago

试下最新版,最新版已经修复这个问题了