echarts底层是使用canvas的类库ZRender实现的,提供直观,生动,可交互,可高度个性化定制的数据可视化图表。

看了echarts的饼状图,思考了他的实现方法

那么canvas怎么绘制饼状图呢?下面上代码:

var canvas=document.getElementById('canvas');var ctx = canvas.getContext('2d');var x = canvas.width/2,//饼图圆心xy = canvas.height/2,//饼图圆心ypersent = 0.5,//半径占的百分比radial = (x>y?y:x)*persent,value1 = 20,value2=30,value3=40,sum=value1+value2+value3;//定义扇形方法,封装功能CanvasRenderingContext2D.prototype.sector = function(x,y,radial,start,end){this.beginPath();this.moveTo(x,y);this.arc(x,y,radial,start,end);this.closePath();return this;}ctx.fillStyle = 'red';//调用绘制扇形ctx.sector(x,y,radial,0,value1*2*Math.PI/sum).fill();ctx.fillStyle = 'green';ctx.sector(x,y,radial,value1*2*Math.PI/sum,(value1*2*Math.PI/sum+value2*2*Math.PI/sum)).fill();ctx.fillStyle = 'blue';ctx.sector(x,y,radial,(value1*2*Math.PI/sum+value2*2*Math.PI/sum),2*Math.PI).fill();

echarts的饼图制作分析相关推荐

  1. ECharts饼图制作分析

    转载:https://www.cnblogs.com/liubeimeng/p/4871812.html ECharts,缩写来自Enterprise Charts,商业级数据图表,一个纯Javasc ...

  2. Echarts之饼图制作

    本篇主要讲解通过echarts制作一个饼图时所用到的一些代码,及所用到代码的详细作用,记录自己的echarts学习过程,同时希望对看到这篇博客的客友提供些许帮助. <!DOCTYPE html& ...

  3. echarts之饼图制作+标示线

    1,安装echarts组件 npm install echarts -s 2,在main.js中全局引入以及挂载 import echarts from 'echarts';//引入 Vue.prot ...

  4. 如何制作饼图?制作步骤有哪些?专业的饼图制作软件

    同一种数据,往往有多种可视化呈现的方式.然而,在我们将数据可视化的过程中,却经常会被"惯性思维"所束缚.饼图常用于统计学模块,它是一个分区的特殊形状如饼的圆形图.但如今,饼图不仅仅 ...

  5. Echarts 解决饼图文字过长重叠的问题

    Echarts 解决饼图文字过长重叠的问题 参考文章: (1)Echarts 解决饼图文字过长重叠的问题 (2)https://www.cnblogs.com/yingsu/p/10608014.ht ...

  6. echarts饼图解析html标签,解决echarts中饼图标签重叠的问题

    饼图中的series有个avoidLabelOverlap属性, avoidLabelOverlap:是否启用防止标签重叠策略,默认开启,在标签拥挤重叠的情况下会挪动各个标签的位置,防止标签间的重叠. ...

  7. java word 饼图_[Java教程]echarts标准饼图解读(一)——基本配置demo

    [Java教程]echarts标准饼图解读(一)--基本配置demo 0 2016-11-21 17:00:18 echarts标准饼图解读共分为四部分, 一.基本配置demo 二.标题(title) ...

  8. Echarts pie 饼图类型后显示数据

    Echarts pie 饼图类型后显示数据 sysPie:function(libtypelist){var that=this;libtypelist=that.indexData.libtypel ...

  9. Echarts实现饼图+饼图中心文字显示

    Echarts实现饼图+饼图中心文字显示 描述 效果 源代码 描述 Echarts实现饼图+中心文字显示. 在 title 内实现饼图中心文字展示. 效果 源代码 let data = [{ name ...

最新文章

  1. ubuntu桌面_Ubuntu桌面自动更换bing每日壁纸
  2. 【C语言】12-指向一维数组元素的指针
  3. 揭开AI产品PRD的面纱,浅谈其和互联网产品PRD的异同
  4. boost::fibers::launch::dispatch的用法测试程序
  5. java安全编码指南之:异常处理
  6. Diango博客--21.实现简单的全文搜索
  7. 解决Hbase报错java.lang.IllegalStateException: The procedure WAL relies on the ability to hsync for....
  8. [USACO08MAR]土地征用Land Acquisition
  9. FPGA复位方法总结
  10. SpringBoot实战(十一):MultipartException: Could not parse multipart servlet request
  11. [bzoj 4774]修路
  12. 快速排序 与 归并排序
  13. 传智播客Java 方法
  14. apache常用模块介绍
  15. python3.5安装scipy_Python3上的Scipy安装
  16. utf8编码在线转换html,utf8 gb2312编码在线转换工具
  17. 使用计算机过程中 你有哪些有效措施防范计算机病毒,计算机病毒防范措施主要有什么...
  18. @RequestBody、 @RequestParam 、 @PathVariable 和 @Vaild 注解
  19. 10款暗色质感和黑白效果LR预设
  20. java游戏开发杂谈 - 实现游戏主菜单

热门文章

  1. 解决黑苹果 App Store 无限输入密码的方法
  2. 性能评测方法、各评测项标准总结
  3. 51单片机利用STC-ISP下载软件时串口打开失败怎么办?
  4. 关于五十音 片假名 平假名
  5. Python_作图添加水平线和垂直线_linspace语句介绍
  6. java.lang.ClassCastException: de.odysseus.el.ExpressionFactoryImpl cannot be cast to javax.el.Expres
  7. python-二维嵌套列表的元素删除、更改大小写
  8. 关于H5闪退问题--资源优化
  9. VBA编程图表(二十一)
  10. 设计模式之装饰器模式(C++)