AntV - F2移动端图表库

联合创作 · 2023-09-28 01:31

F2 是面向移动端的一套基于可视化图形语法的图表库,具有精简、高性能、易扩展的特性。适用于对性能、大小、扩展性要求严苛的场景。


特性



  • 极小:在提供了几十种图表的基础上,压缩后代码不足 70k,全部大小 100k


  • 高性能:极致优化贴近原生 canvas 的性能


  • 高扩展性:可以非常容易的实现个性化的图表



安装


浏览器引入


既可以通过将脚本下载到本地也可以直接引入在线资源:



<!-- 引入在线资源 -->
<script src="https://gw.alipayobjects.com/as/g/datavis/assets/1.0.5/f2/3.0.0/f2.min.js"></script>


<!-- 引入本地脚本 -->
<script src="./f2.js"></script>

通过 npm 安装


官方提供了 F2 npm 包,通过下面的命令即可完成安装



npm install @antv/f2 --save

成功安装完成之后,即可使用 import 或 require 进行引用。



const F2 = require('@antv/f2');

开始使用


在 F2 引入页面后,我们就已经做好了创建第一个图表的准备了。


下面是以一个基础的柱状图为例开始我们的第一个图表创建。


浏览器引入方式


1. 创建 canvas 标签


在页面上创建一个 canvas 并指定 id



<canvas id="c1"></canvas>

2. 编写图表绘制代码


创建 canvas 标签后,我们就可以进行简单的图表绘制:



  1. 创建 Chart 图表对象,指定图表 ID、指定图表的宽高、边距等信息;


  2. 载入图表数据源;


  3. 使用图形语法进行图表的绘制;


  4. 渲染图表。




// F2 对数据源格式的要求,仅仅是 JSON 数组,数组的每个元素是一个标准 JSON 对象。
const data = [ 
  { genre: 'Sports', sold: 275 },
  { genre: 'Strategy', sold: 115 },
  { genre: 'Action', sold: 120 },
  { genre: 'Shooter', sold: 350 },
  { genre: 'Other', sold: 150 },
];

// Step 1: 创建 Chart 对象
const chart = new F2.Chart({
  id: 'c1', // 指定图表容器 ID
  width: 500, // 指定图表宽度
  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();

完成上述两步之后,保存文件并用浏览器打开,一张柱状图就绘制成功了:


浏览 26
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报