-3
A
回答
0
上述圆环图可以使用HTML 5个画布来完成。
样品:https://jsfiddle.net/wm6szms3/
HTML代码:
<canvas id="canvas" width=325 height=325></canvas>
JavaScript代码:
var canvas=document.getElementById("canvas");
var ctx=canvas.getContext("2d");
var colors=['skyblue','gray','orange'];
var values=[47,6,47];
var labels=['Voluntary','Robot','Mandatory'];
dmbChart(150,150,125,25,values,colors,labels,0);
function dmbChart(cx,cy,radius,arcwidth,values,colors,labels,selectedValue){
var tot=0;
var accum=0;
var PI=Math.PI;
var PI2=PI*2;
var offset=-PI/2;
ctx.lineWidth=arcwidth;
for(var i=0;i<values.length;i++){tot+=values[i];}
for(var i=0;i<values.length;i++){
ctx.beginPath();
ctx.arc(cx,cy,radius,
offset+PI2*(accum/tot),
offset+PI2*((accum+values[i])/tot)
);
ctx.strokeStyle=colors[i];
ctx.stroke();
accum+=values[i];
}
var innerRadius=radius-arcwidth-3;
ctx.beginPath();
ctx.arc(cx,cy,innerRadius,0,PI2);
ctx.fillStyle=colors[selectedValue];
ctx.fill();
ctx.textAlign='center';
ctx.textBaseline='bottom';
ctx.fillStyle='white';
ctx.font=(innerRadius)+'px verdana';
ctx.fillText(values[selectedValue],cx,cy+innerRadius*.9);
ctx.font=(innerRadius/4)+'px verdana';
ctx.fillText(labels[selectedValue],cx,cy-innerRadius*.25);
}
0
参考此链接http://www.highcharts.com/demo/gauge-activity 这有吨自由图表,并与小动画您的网站看起来动感十足。他们提供了一个很好的功能,可以在jsfiddle中进行编辑,并在合并之前进行测试。
0
下面是谷歌图表使用Javascript一些代码示例,
,如果你想更复杂的图表,你可以使用this
个多个图表与的jsfiddle例子可以精细here
google.charts.load('current', {'packages':['corechart']});
google.charts.setOnLoadCallback(drawChart);
function drawChart() {
var data = google.visualization.arrayToDataTable([
['Effort', 'Amount given'],
['My all', 100],
]);
var options = {
pieHole: 0.5,
pieSliceTextStyle: {
color: 'black',
},
legend: 'none'
};
var chart = new google.visualization.PieChart(document.getElementById('donut_single'));
chart.draw(data, options);
}
<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
<div id="donut_single" style="width: 900px; height: 500px;"></div>
+0
我很欣赏你的答案,但我需要一个自定义的,看起来完全像我需要的。如果我使用谷歌图表,我无法得到我想要的样子。 – Varun
相关问题
- 1. 如何创建一个简单的甜甜圈图表
- 2. angular-chart.js甜甜圈图:如何更改甜甜圈弧的宽度?
- 3. Chartjs套餐饼图/甜甜圈图表
- 4. 使用JSON和chart.js创建甜甜圈图表
- 5. 绑定莫里斯甜甜圈图表
- 6. 隐藏标示甜甜圈图表r
- 7. SVG圈 - 动画片段? (甜甜圈图)
- 8. GWT Highcharts - 半圈甜甜圈
- 9. Chart.js v2:甜甜圈里面的甜甜圈之间的空间
- 10. highcharts.js如何在一个原始的双甜甜圈图?
- 11. jqPlot:甜甜圈图中心的图例
- 12. 我该如何在大型文字数据中圈出甜甜圈图表?
- 13. 图表Js甜甜圈图表给出错误
- 14. Chartjs甜甜圈消失
- 15. SVG:饼图中的甜甜圈洞
- 16. 如何创建使用角JS的甜甜圈高图使用角JS的
- 17. 甜甜圈图仅使用SVG标记
- 18. 甜甜圈缓存教程
- 19. Chart.JS - 填充甜甜圈
- 20. JavaFX - 绘制甜甜圈
- 21. Java甜甜圈游戏
- 22. 甜甜圈缓存ASP.NET MVC2
- 23. 如何在ggplot2中使用facet_grid制作甜甜圈图表?
- 24. 如何在ExtJS 4.1中实现甜甜圈图表
- 25. 如何让d3js甜甜圈图表支持ie8?
- 26. in angular-nvd3如何翻转甜甜圈图表
- 27. C3 - 如何在甜甜圈图表中居中文本?
- 28. kendoui图甜甜圈设置亮点
- 29. chart.js之图片甜甜圈段内
- 30. charts.js分层甜甜圈饼图
你想自己用CSS的帮助下创造这一切?或者你不介意使用像highcharts等外部库,? – Krish
@Krish使用任何其他外部库可能会出现这种情况吗?我愿意接受任何建议。谢谢。 – Varun
使用'context.arc'和'context.fillText'命令很容易使用[Html5 Canvas](https://developer.mozilla.org/en-US/docs/Web/API/Canvas_API)。这里有一个快速的[示例](https://jsfiddle.net/wm6szms3/)供您开始。 – markE