BizCharts-Chart(父组件)

2019-08-05  本文已影响0人  初入前端的小菜鸟

基于 G2 的 React 版本封装,使用体验更符合 React 技术栈的习惯,他们都与 AntV 有着紧密的协同,他们很快也将同步开源和发布基于 G2 3.0 的版本。

BizCharts概览

组件

Chart

图表最顶级的组件,控制着图表的创建、绘制、销毁等。 详细文档见 Chart api

Coord

坐标系组件,设置 Chart 或者 View 的坐标系类型。 详细文档见 Coord api

Axis

坐标轴组件,控制图表中坐标轴的样式等。 详细文档见 Axis api

Geom

几何标记对象,决定创建图表的类型。 详细文档见 Geom api

Label

几何标记对象上的文本。 详细文档见 Label api

Legend

图例。 详细文档见 Legend api

Guide

坐标轴组件,控制图表中坐标轴的样式等。 详细文档见 Guide api

Facet

控制 Chart 分面。 详细文档见 Facet api

View

视图组件。 详细文档见 View api


Chart

图表的组件,内部生成了一个 G2 chart 实例,同时控制着其他子组件的加载和更新

图表布局

有时候坐标轴、图例等绘图区域外的组件显示不全时,可以通过调整图表各个方向的 padding 来调整最终效果

Api

renderer
const { G2 } from 'bizcharts';
G2.Global.renderer = 'svg' // or 'canvas';

使用方式2: 指定这一个图表使用 svg 渲染。

<Chart renderer='svg' width={600} height={400} data={data} scale={scale} forceFit/>
forceFit
width

height

宽和高未指定时,默认为 500px

data

scale

const scale = {
  'sales': {
    type: 'identity' | 'linear' | 'cat' | 'time' | 'timeCat' | 'log' | 'pow', // 指定数据类型
    alias: string, // 数据字段的别名,会影响到轴的标题内容
    formatter: () => {}, // 格式化文本内容,会影响到轴的label格式
    range: array, // 输出数据的范围,默认[0, 1],格式为 [min, max],min 和 max 均为 0 至 1 范围的数据。
    tickCount: number, // 设置坐标轴上刻度点的个数
    ticks: array, // 用于指定坐标轴上刻度点的文本信息,当用户设置了 ticks 就会按照 ticks 的个数和文本来显示
    sync: boolean // 当 chart 存在不同数据源的 view 时,用于统一相同数据属性的值域范围
  }
};
<Chart data={data} scale={scale} />

!注意:除了以上属性外,不同的 type 还对应有各自的可配置属性,详见 Scale 度量 API;

placeholder

padding

//有时候坐标轴、图例等绘图区域外的组件显示不全时,可以通过调整图表各个方向的 padding 来调整最终效果
<Chart padding="auto" />
<Chart padding={[ 20, 30, 20, 30]} />
<Chart padding={20} />
<Chart padding={{ top: 20, right: 30, bottom: 20, left: 30 }} />
<Chart padding={[20, 'auto', 30, 'auto']} />
<Chart padding={['20%', '30%']} />

paddding="auto" vs 没有设置padding

animate

如果用户需要自定义图表的动画,需要配置 animate 接口使用。具体参见 自定义动画

background
//可配置样式有
{
  fill: string, // 图表背景色
  fillOpacity: number, // 图表背景透明度
  stroke: string, // 图表边框颜色
  strokeOpacity: number, // 图表边框透明度
  opacity: number, // 图表整体透明度
  lineWidth: number, // 图表边框粗度
  radius: number // 图表圆角大小
}

plotBackground
//可配置样式有
{
  fill: string, // 图表背景色
  fillOpacity: number, // 图表背景透明度
  stroke: string, // 图表边框颜色
  strokeOpacity: number, // 图表边框透明度
  opacity: number, // 图表整体透明度
  lineWidth: number, // 图表边框粗度
  radius: number // 图表圆角大小
}

pixelRatio
filter
<Chart
  filter={[
      ['x', val => val > 20] // 图表将会只渲染 x 字段数值大于 20 的数据
  ]}
/>

改属性可以设置默认哪些图表选中和不选中状态。

className
<Chart className="chart1" />

style
const style={fontSize: '12'}
<Chart style={style} />

theme

这是“Chart 级别的主题样式配置”。

上一篇 下一篇

猜你喜欢

热点阅读