| <template><div>
 <lt-canvas ref="canvas" :width="750" :height="500"></lt-canvas>
 </div>
 </template>
 <script>
 import LightChart from 'light-chart';
 export default {
 components:{
 ltCanvas:require("light-chart/canvas")
 },
 data(){
 return {}
 },
 mounted(){
 const map = {
 '芳华': '40%',
 '妖猫传': '20%',
 '机器之血': '18%',
 '心理罪': '15%',
 '寻梦环游记': '5%',
 '其他': '2%',
 };
 const data = [
 { name: '芳华', proportion: 0.4, a: '1' },
 { name: '妖猫传', proportion: 0.2, a: '1' },
 { name: '机器之血', proportion: 0.18, a: '1' },
 { name: '心理罪', proportion: 0.15, a: '1' },
 { name: '寻梦环游记', proportion: 0.05, a: '1' },
 { name: '其他', proportion: 0.02, a: '1' }
 ];
 let chart = new LightChart.Chart({
 ltCanvas:this.$refs.canvas
 });
 chart.source(data);
 chart.legend({
 position: 'right',
 itemFormatter(val) {
 return val + '  ' + map[val];
 },
 unCheckStyle: {
 fontWeight: '800'
 }
 });
 chart.coord('polar', {
 transposed: true,
 radius: 0.8
 });
 chart.axis(false);
 chart.interval()
 .position('a*proportion')
 .color('name', [ '#1890FF', '#13C2C2', '#2FC25B', '#FACC14', '#F04864', '#8543E0' ])
 .adjust('stack')
 .style({
 lineWidth: 1,
 stroke: '#fff'
 });
 
 chart.render();
 }
 }
 </script>
 <style scoped>
 
 </style>
 
 |