canvas绘制三等分饼型图
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<canvas id="c"></canvas>
<script>
var cv = document.getElementById("c");
var ctx = cv.getContext("2d"); cv.width = 600;
cv.height = 400;
cv.style.border = "1px solid #000"; // 角度转弧度
function toRadian(angle) {
return angle / 180 * Math.PI;
} // 弧度转角度
function toAngle(radian) {
return radian / Math.PI * 180;
} // 绘制饼型图(三等分)
var x0 = 200, y0 = 200,
radius = 100,
startAngle = -90,
step = 120; // 线绘制第一个扇形
// 基本方式
// ctx.fillStyle = "red";
// ctx.moveTo(x0, y0);
// ctx.arc(x0, y0, radius, toRadian(startAngle), toRadian(-90 + 120));
// ctx.fill(); // ctx.beginPath();
// ctx.fillStyle = "green";
// ctx.moveTo(x0, y0);
// ctx.arc(x0, y0, radius, toRadian(-90 + 120), toRadian(30 + 120));
// ctx.fill(); // ctx.beginPath();
// ctx.fillStyle = "blue";
// ctx.moveTo(x0, y0);
// ctx.arc(x0, y0, radius, toRadian(30 + 120), toRadian(150 + 120));
// ctx.fill(); var colors = ["red", "green", "blue"];
colors.forEach(function(value, index) {
ctx.beginPath(); ctx.fillStyle = value;
ctx.moveTo(x0, y0);
ctx.arc(x0, y0, radius, toRadian(startAngle), toRadian(startAngle+=step));
ctx.fill();
}); // ctx.closePath();
// ctx.stroke(); // 绘制扇形
// 1 moveTo 到圆形
// 2 绘制圆弧
// 3 如果是 fill 这时候扇形就绘制完毕了
// 如果是 stroke ,最简单的处理方式: closePath();
</script>
</body>
</html>
canvas绘制三等分饼型图的更多相关文章
- canvas学习之饼状图
		
接着上一节说,这次我使用canvas绘制了饼状图,主要是SectorGraph.js, 引入 import {canvasPoint} from '../../assets/js/canvas';im ...
 - 用canvas 绘制的饼状统计图、柱状统计图、折线统计图
		
canvas 绘制的饼状统计图 canvas 绘制的柱状统计图 canvas 绘制的折线统计图
 - [canvas]利用canvas绘制自适应的折线图
		
前段时间学习了用canvas绘制折现图,且当画布变换大小,折现图会随之变化,现附上代码 <!DOCTYPE html> <html lang="en"> & ...
 - canvas+js画饼状图
		
效果: 源码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="U ...
 - HTML5之Canvas绘图实例——饼状图
		
实现饼状分布画图(如下):调试环境:Firefox
 - JupyterLab绘制:柱状图,饼状图,直方图,散点图,折线图
		
JupyterLab绘图 喜欢python的同学,可以到 https://v3u.cn/(刘悦的技术博客) 里面去看看,爬虫,数据库,flask,Django,机器学习,前端知识点,JavaScrip ...
 - 绘制matplotlib 饼状图
		
参考:https://blog.csdn.net/ScarlettYellow/article/details/80458797 (2)2016年就业人员在三次产业中分布的饼状图. def swap( ...
 - canvas绘制饼型图
		
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
 - C#绘制立体三维饼状图
		
转载自原文 C#绘制立体三维饼状图(超酷) 内容原文地址:LINK [翻译]Julijan Sribar著3D Pie Chart一个用于绘制立体三维饼状图的C#类库[简介]本文的想法就是创建一个独立 ...
 
随机推荐
- HDL之Bitwise operation
			
1 Verilog 1.1 Bitwise operator Bitwise operators perform a bit wise operation on two operands. They ...
 - vue1 到 vue2 v-el变成ref
			
vue1的写法 div class="menu-wrapper" v-el="menu-wrapper"> <ul class="menu ...
 - RxSwift學習教程之基礎篇
			
前言 我們在 iOS 開發過程中,幾乎無時無刻都要面對異步事件的處理.例如,按鍵點擊.數據保存..音頻後臺播放.交互動畫展示.這些事件並不具備特定時序性,甚至它們可能同時發生. 雖然 Apple 提供 ...
 - Kafka学习笔记(1)----Kafka的简介和Linux下单机安装
			
1. Kafka简介 Kafka is a distributed,partitioned,replicated commit logservice.它提供了类似于JMS的特性,但是在设计实现上完全不 ...
 - layer弹出框的用法
			
页面中引入 layer.js 就行了 1.弹出一个提示信息: layer.msg("我是哦提示信息"); 2.弹出一个带选择的按钮的框 layer.open({ title: ' ...
 - python tips:文件读取——换行符的问题
			
问题:在windows系统中,换行的符号是'\r\n'.python在读文件的时候为了系统兼容,会默认把'\r','n','\r\n'都视作换行.但是在windows文件中,可能在同一行中同时存在'\ ...
 - PHP SplObjectStorage使用实例
			
SplObjectStorage是SPL标准库中的数据结构对象容器,用来存储一组对象,特别是当你需要唯一标识对象的时候,需要的朋友可以参考下: PHP SPL SplObjectStorage类实现了 ...
 - Java Spring 两大特色
			
0 引言 本文主要描述的是Spring常用的两大特色功能:AOP和IoC容器 1 IoC Spring的IoC:就是常说的“控制反转”,也又叫依赖注入的(DI). 优点:IoC最大的好处就是把对象生成 ...
 - K3 新单到老单关联字段的添加
			
新单到老单字段的添加分为两种: 一种为文本字段信息的关联,新单与老单字段的信息均为文本字段: 另一种为基础资料信息的关联,新单与老单均为基础资料字段信息. K3 WISE 11.0中存储老 ...
 - Oracle 知识积累
			
1.oracle存储过程中is和as的区别 在存储过程(PROCEDURE)和函数(FUNCTION)中没有区别,在视图(VIEW)中只能用AS不能用IS,在游标(CURSOR)中只能用IS不能用AS ...