Skip to content

dhlolo/ant-design-charts

 
 

Repository files navigation

@ant-design/charts

A React chart library, based on G2Plot

npm npm GitHub stars Test CI

Features

  • Easy to use
  • TypeScript
  • Pretty & Lightweight
  • Responsive
  • Storytelling

Installation

npm

$ npm install @ant-design/charts

Usage

import React from 'react';
import { Line } from '@ant-design/charts';

const Page: React.FC = () => {
  const data = [
    { year: '1991', value: 3 },
    { year: '1992', value: 4 },
    { year: '1993', value: 3.5 },
    { year: '1994', value: 5 },
    { year: '1995', value: 4.9 },
    { year: '1996', value: 6 },
    { year: '1997', value: 7 },
    { year: '1998', value: 9 },
    { year: '1999', value: 13 },
  ];

  const config = {
    data,
    width: 800,
    height: 400,
    autoFit: false,
    xField: 'year',
    yField: 'value',
    point: {
      size: 5,
      shape: 'diamond',
    },
    label: {
      style: {
        fill: '#aaa',
      },
    },
  };

  let chart;

  // 导出图片
  const downloadImage = () => {
    chart?.downloadImage();
  };

  // 获取图表 base64 数据
  const toDataURL = () => {
    console.log(chart?.toDataURL());
  };

  return (
    <div>
      <button type="button" onClick={downloadImage} style={{ marginRight: 24 }}>
        导出图片
      </button>
      <button type="button" onClick={toDataURL}>
        获取图表信息
      </button>
      <Line {...config} onReady={(chartInstance) => (chart = chartInstance)} />
    </div>
  );
};
export default Page;

result:

Gallery

gallery

Document

API

See chart API for details.

Common props:

Property Description Type defaultValue
onReady chart loaded callback (chart)=> void -
onEvent chart events (chart, event)=> void -
loading loading status boolean -
loadingTemplate loading template React.ReactElement -
errorTemplate custom error template (e: Error) => React.ReactNode -
className container class string -
style container style React.CSSProperties -
chartRef chart ref (React.MutableRefObject<Chart>)=> void -

More usage

Communication Group

They are DingTalk groups.

DingTalk

License

Charts is available under the License MIT.

develop

depend

start

# 安装依赖
$ npm install

# 开发 library
$ npm run dev

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 63.8%
  • TypeScript 33.5%
  • EJS 2.2%
  • Less 0.5%