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
标签后,我们就可以进行简单的图表绘制:
创建 Chart 图表对象,指定图表 ID、指定图表的宽高、边距等信息;
载入图表数据源;
使用图形语法进行图表的绘制;
渲染图表。
// 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();
完成上述两步之后,保存文件并用浏览器打开,一张柱状图就绘制成功了:
安装 浏览器引入 <script src="./f2.js"></script>复制代码 npm 安装 安装 npm install @antv/f2 --save复制代码 引入 const F2 = require('@antv/f2');复制代码 上手 步骤 创建 Chart 图表对象,指定图表 ID、指定图表的宽高、边距等信息; 载入图表数据源; 使用图形语法进行图表的绘制; 渲染图表
移动端小程序使用antv/my-f2,antv/f2不适合小程序使用 小程序开发者工具引入@antv/my-f2 开发环境引入(使用npm 或 cnpm) 开发依赖直接开发工具导入失败 所以手动导入 npm install @antv/my-f2 --save -dev cnpm install @antv/my-f2 --save -dev 下载完成后,进行init配置package.json
官方示例: https://f2-v3.antv.vision/zh/examples/column/column#pan 直接将这个示例搬到了钉钉小程序里,但是无法横向平移,查了两个小时,最后在issue中找到解决方法 加载交互行为 pan 和滚动条 ScrollBar import ScrollBar from '@antv/f2/lib/plugin/scroll-bar'; import
示例中只有静态赋值,这个问题困扰了很久,最终结果 page外仍然定义initChart let chart = null; function initChart(canvas, width, height, F2) { var pages = getCurrentPages(); var currPage = pages[pages.length - 1] var data = currP
index.js // components/antChart/index.js const app = getApp(); Component({ /** * 组件的属性列表 */ properties: { chartColor: { type: Array, value: ['#FE5D4D
1.安装 详情参照(https://f2.antv.vision/zh/examples/pie/basic#pie-click) 前提:已经是可以运行的vue移动端项目。 移动到项目目录: npm install @antv/f2 --save 2.引入// 直接上代码 自己借鉴文档 使用 不需要在main.js中单独引入,哪个文件使用了就在哪个文件引入。 <template lang="htm
https://g2plot.antv.antgroup.com/examples#general-state 当没有数据的时候,大白屏太难看,有没有empty图标的配置属性,可以看上去不那么空。
大佬们,用x6如何实现这种布局. 目前使用的是 dagre layout 左右布局。好像无法满足组内的上下布局。
在移动端h5页面中如何使用3d图表,这边想要对应的点在tooltip那显示点位的详细内容,在pc端已经使用triggerOn配置实现没问题,但是切换到移动端就完全失效了,完全触发不了点击事件,不知道该如何展示tooltip triggerOn也试过配置touch,touchstart,tap什么的移动端事件,但是都没有生效,另外在谷歌浏览器和微信小程序的模拟器中可以实现,应该是这两个还有保留着pc
本文向大家介绍移动端js图片查看器,包括了移动端js图片查看器的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了js图片查看器插件的使用方法,制作手机使用的网页图片查看器,供大家参考,具体内容如下 这几天抽空在为项目开发一个量身的图片查看器,目前已初步完成需求。 开发场景是:在一个多文件下载展示列表中,如检测某些文件为图片时,则点击该文件时打开图片查看器展示该图片,并将列表内其它图片同
LSV的移动端支持Android以及AndroidPad两个平台,用户可以同过不同的需求进行下载。LSV手机端有着方便快捷的特色并继承了LSV客户端的各项特色,并且可以通过云端与LSV客户端进行数据的交互,十分方便,最重要的是它也是免费提供给用户的。 点击链接了解详情
LSV的移动端支持Android以及AndroidPad两个平台,用户可以同过不同的需求进行下载。LSV手机端有着方便快捷的特色并继承了LSV客户端的各项特色,并且可以通过云端与LSV客户端进行数据的交互,十分方便,最重要的是它也是免费提供给用户的。 点击链接了解详情