import React, { Component } from 'react'; import { Chart, Axis, Geom, Tooltip, Coord, Legend, Label } from 'bizcharts'; import { DataView } from '@antv/data-set'; export default class PieComponent extends React.Component { constructor(props) { super(props); this.state = { data: [ {"item":"18岁以下","count":1}, {"item":"18-24岁","count":2}, {"item":"25-29岁","count":1}, {"item":"30-34岁","count":2}, {"item":"40-49岁","count":1} ] }; } componentWillReceiveProps(nextProps) { this.setState({ data: nextProps.data }); } render() { let data = this.state.data; const dv = new DataView(); dv.source(data).transform({ type: 'percent', field: 'count', dimension: 'item', as: 'percent', }); const cols = { percent: { formatter: (val) => { val = `${val * 100}%`; return val; }, }, }; return (