Angular + G2[AntV] 01

Angular + G2[AntV] 01

目的

之前使用过ng-alain,发现这里面整合的G2图表不那么完全,所以自己试着单独整合Angular+G2

步骤

按照官网的说明:

1.通过npm安装

npm install @antv/g2 --save

2.在html

<div id="c1"></div>

3.在ts文件

import G2 from '@antv/g2';	// 引入G2模块
/**
 * 如果按照官网这样引入会发现报错提示,正确的引入方式应该是以下这种:
 * import * as G2 from '@antv/g2';
 */

constructor() {
  const data = [
     { genre: 'Sports', sold: 275 },
     { genre: 'Strategy', sold: 115 },
     { genre: 'Action', sold: 120 },
     { genre: 'Shooter', sold: 350 },
     { genre: 'Other', sold: 150 },
   ]; // G2 对数据源格式的要求,仅仅是 JSON 数组,数组的每个元素是一个标准 JSON 对象。
   // Step 1: 创建 Chart 对象
   const chart = new G2.Chart({
     container: 'c1', // 指定图表容器 ID
     width: 600, // 指定图表宽度
     height: 300, // 指定图表高度
   });
   // Step 2: 载入数据源
   chart.source(data);
   // Step 3:创建图形语法,绘制柱状图,由 genre 和 sold 两个属性决定图形位置,genre 映射至 x 轴,sold 映射至 y 轴
   chart
     .interval()
     .position('genre*sold')
     .color('genre');
   // Step 4: 渲染图表
   chart.render();
 }

4.运行我们发现Please specify the container for the chart!
在这里插入图片描述
其实导致这个错误的一般有两种原因:
(1)容器id写错了;
(2)代码执行于视图渲染前,所以没找到指定的id;

所以可以使constructor中的代码延迟执行,这是效果
在这里插入图片描述
或者我们可以把代码写到ngOnInit中,也可以得到相同的效果,至于为什么在constructor中就不行,得看下Angular中各种生命钩子函数和构造函数的执行顺序

到这里,G2的引入及基本使用就完成了

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值