1 | <img src="https://gw.alipayobjects.com/zos/antfincdn/R8sN%24GNdh6/language.svg" width="18"> [English](./README.md) | 简体中文
|
2 |
|
3 | <h1 align="center">
|
4 | <b>G2 5.0</b>
|
5 | </h1>
|
6 |
|
7 | <div align="center">
|
8 |
|
9 | 简洁的渐进式可视化语法,用于构建仪表盘、数据探索以及数据讲故事。
|
10 |
|
11 | <p align="center">
|
12 | <a href="https://g2.antv.antgroup.com/manual/introduction/what-is-g2">介绍</a> •
|
13 | <a href="https://g2.antv.antgroup.com/examples">案例</a> •
|
14 | <a href="https://g2.antv.antgroup.com/manual/introduction/getting-started">教程</a> •
|
15 | <a href="https://g2.antv.antgroup.com/api/overview">API</a> •
|
16 | <a href="https://editor.antv.antgroup.com/">Editor</a>
|
17 | </p>
|
18 |
|
19 | [![Build Status](https://github.com/antvis/g2/workflows/build/badge.svg?branch=v5)](https://github.com/antvis//actions)
|
20 | [![Coverage Status](https://img.shields.io/coveralls/github/antvis/g2/v5.svg)](https://coveralls.io/github/antvis/g2?branch=v5)
|
21 | [![npm Version](https://img.shields.io/npm/v/@antv/g2.svg)](https://www.npmjs.com/package/@antv/g2)
|
22 | [![npm Download](https://img.shields.io/npm/dm/@antv/g2.svg)](https://www.npmjs.com/package/@antv/g2)
|
23 | [![npm License](https://img.shields.io/npm/l/@antv/g2.svg)](https://www.npmjs.com/package/@antv/g2)
|
24 |
|
25 | ![examples](https://mdn.alipayobjects.com/huamei_qa8qxu/afts/img/A*_GfqQoRCqQkAAAAAAAAAAAAADmJ7AQ/fmt.webp)
|
26 |
|
27 | </div>
|
28 |
|
29 | G2 起源于 Leland Wilkinson 的图形语法:《The Grammar of Graphics》,但又不止于图形语法。
|
30 |
|
31 | ## ✨ 特色
|
32 |
|
33 | - **渐进式语法**:结合工业和学术实践,实现图形语法、动画语法和交互语法。
|
34 | - **丰富的标记**:内置 10+ 基础标记,8+ 高阶标记。
|
35 | - **高可扩展性**:提供统一机制扩展所有可视化组件。
|
36 | - **个性化风格**:支持手绘、圆角、纹理等风格。
|
37 | - **多环境渲染**:支持 Canvas、SVG 以及 WebGL,和 Node.js 服务端渲染。
|
38 |
|
39 | ## 🔨 开始使用
|
40 |
|
41 | 可以通过 NPM 或 Yarn 等包管理器来安装。
|
42 |
|
43 | ```bash
|
44 | $ npm install @antv/g2
|
45 | ```
|
46 |
|
47 | ```bash
|
48 | $ yarn add @antv/g2
|
49 | ```
|
50 |
|
51 | 成功安装之后,可以通过 import 导入 Chart 对象。
|
52 |
|
53 | ```html
|
54 | <div id="container"></div>
|
55 | ```
|
56 |
|
57 | ```js
|
58 | import { Chart } from '@antv/g2';
|
59 |
|
60 | // 准备数据
|
61 | const data = [
|
62 | { genre: 'Sports', sold: 275 },
|
63 | { genre: 'Strategy', sold: 115 },
|
64 | { genre: 'Action', sold: 120 },
|
65 | { genre: 'Shooter', sold: 350 },
|
66 | { genre: 'Other', sold: 150 },
|
67 | ];
|
68 |
|
69 | // 初始化图表实例
|
70 | const chart = new Chart({
|
71 | container: 'container',
|
72 | });
|
73 |
|
74 | // 声明可视化
|
75 | chart
|
76 | .interval() // 创建一个 Interval 标记
|
77 | .data(data) // 绑定数据
|
78 | .encode('x', 'genre') // 编码 x 通道
|
79 | .encode('y', 'sold') // 编码 y 通道
|
80 | .encode('color', 'genre'); // 编码 color 通道
|
81 |
|
82 | // 渲染可视化
|
83 | chart.render();
|
84 | ```
|
85 |
|
86 | 如果一切顺利,你可以得到下面的柱状图!
|
87 |
|
88 | <img src="https://mdn.alipayobjects.com/huamei_qa8qxu/afts/img/A*XqCnTbkpAkQAAAAAAAAAAAAADmJ7AQ/fmt.webp" width="640" alt="example">
|
89 |
|
90 | ## 🌍 生态
|
91 |
|
92 | - [g2-react](https://github.com/pearmini/g2-react) - G2 的轻量级 React 组件,没有额外特性。
|
93 | - [g2-extensions](https://github.com/antvis/g2-extensions) - G2 的一系列插件库,包含 3D 和智能可视化等。
|
94 | - [ant-design-charts](https://github.com/ant-design/ant-design-charts) - React 图表库,基于 [G2](https://github.com/antvis/G2), [G6](https://github.com/antvis/G6), [X6](https://github.com/antvis/X6), [L7Plot](https://github.com/antvis/L7Plot).
|
95 | - [更多...](https://github.com/antvis/G2/discussions/5772)
|
96 |
|
97 | ## 📮 参与贡献
|
98 |
|
99 | - [问题](https://github.com/antvis/g2/issues): 报告 bug 或者提出需求
|
100 | - [贡献指南](https://github.com/antvis/g2/blob/v5/CONTRIBUTING.zh-CN.md):参与建设 G2
|
101 | - [讨论](https://github.com/antvis/G2/discussions):在 GitHub 上或者钉钉群里面讨论(30233731, 35686967, 44788198)
|
102 |
|
103 | <img src="https://gw.alipayobjects.com/zos/antfincdn/hTzzaqgHgQ/Antv%252520G2%252520%26%252520G2Plot.png" width="200" height="266" alt="code"/>
|
104 |
|
105 | ## 📄 许可证
|
106 |
|
107 | MIT@[AntV](https://github.com/antvis).
|