国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > HTML > 正文

html5+canvas動態實現餅狀圖步驟詳解

2020-03-24 16:47:54
字體:
來源:轉載
供稿:網友
這次給大家帶來html5+canvas動態實現餅狀圖步驟詳解,html5+canvas動態實現餅狀圖的注意事項有哪些,下面就是實戰案例,一起來看一下。

先來看效果圖

這里并沒引用jquery等第三方庫,只是用dom操作和canvas的特性編寫的。

canvas畫圓大體分為實心圓和空心圓。

根據需求分析知道該圓為實心圓。

1.先用canvas畫實心圓

//偽代碼var canvas = document.createElement( canvas var ctx = canvas.getContext( 2d ctx.beginPath();ctx.arc(圓心x軸坐標,圓心y軸坐標,半徑,開始角,結束角);ctx.fillStyle = green ctx.closePath();ctx.fill();

2.根據不同顏色繪制餅狀圖

//偽代碼var canvas = document.createElement( canvas var ctx = canvas.getContext( 2d ctx.beginPath();ctx.arc(圓心x軸坐標,圓心y軸坐標,半徑,綠色開始角,綠色結束角);ctx.fillStyle = green ctx.closePath();ctx.fill();ctx.beginPath();ctx.arc(圓心x軸坐標,圓心y軸坐標,半徑,紅色開始角,紅色結束角);ctx.fillStyle = red ctx.closePath();ctx.fill();ctx.beginPath();ctx.arc(圓心x軸坐標,圓心y軸坐標,半徑,黃色開始角,黃色結束角);ctx.fillStyle = yellow ctx.closePath();ctx.fill();ctx.beginPath();ctx.arc(圓心x軸坐標,圓心y軸坐標,半徑,紫色開始角,紫色結束角);ctx.fillStyle = purple ctx.closePath();ctx.fill();

3.動態繪制餅狀圖

動態繪制圓網上普遍推薦三種方法:requestAnimationFrame、setInterval(定時)、還有動態算角度的。

這里我用的是第一種requestAnimationFrame方式。

在編寫的過程中發現一個問題,就是動態畫圓時并不是以圓心的坐標畫的。為了解決這一問題,需要在每次畫圓時重新將canvas的畫筆的坐標定義為最初圓心的坐標。

 !DOCTYPE html  html  head  meta charset= utf-8  title /title  style  #graph {/* border: 1px solid black; height: 100%; width: 100%; box-sizing: border-box;*/ /style  /head  body  p id= circle >

相信看了本文案例你已經掌握了方法,更多精彩請關注php 其它相關文章!

推薦閱讀:

H5+WebWorkers多線程開發使用詳解

H5離線應用與客戶端存儲使用詳解

以上就是html5+canvas動態實現餅狀圖步驟詳解的詳細內容,html教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 乌苏市| 鹤峰县| 沐川县| 舞阳县| 茌平县| 新闻| 临夏县| 柳林县| 岳池县| 于田县| 兴仁县| 大冶市| 城口县| 汝州市| 宜春市| 镇江市| 安新县| 会昌县| 津南区| 巫山县| 库伦旗| 郴州市| 吐鲁番市| 昭平县| 连山| 邯郸市| 泗洪县| 全南县| 张家港市| 中阳县| 贵南县| 九寨沟县| 醴陵市| 松潘县| 正定县| 兴文县| 黑龙江省| 南投市| 阿鲁科尔沁旗| 综艺| 嵊泗县|