import { Chart, Tooltip, Pie, Coord, View } from 'viser-react'; import * as React from 'react'; const DataSet = require('@antv/data-set'); const sourceData = [ { value: 251, type: '大事例一', name: '子事例一' }, { value: 1048, type: '大事例一', name: '子事例二' }, { value: 610, type: '大事例二', name: '子事例三' }, { value: 434, type: '大事例二', name: '子事例四' }, { value: 335, type: '大事例三', name: '子事例五' }, { value: 250, type: '大事例三', name: '子事例六' }, ]; const dv = new DataSet.View().source(sourceData); dv.transform({ type: 'percent', field: 'value', dimension: 'type', as: 'percent', }); const data = dv.rows; const viewDv = new DataSet.View().source(sourceData); viewDv.transform({ type: 'percent', field: 'value', dimension: 'name', as: 'percent' }); const viewData = viewDv.rows; const scale = { dataKey: 'percent', formatter: '.2%', }; export default class App extends React.Component { render() { const itemTpl = '
  • {name}: {value}
  • '; const style = { lineWidth: 1, stroke: '#fff' }; const tooltip = [ 'name*percent', (item, percent) => { percent = (percent * 100).toFixed(2) + '%'; return { name: item, value: percent }; }, ]; const color = ['#BAE7FF', '#7FC9FE', '#71E3E3', '#ABF5F5', '#8EE0A1', '#BAF5C4']; return ( ); } }