最近需要使用chart.js画图来显示数据,发现chart.js的效果很不错,很方便的可以画出柱状图或者饼图,当时需求准备画出一个doughnut图,并实现周围有相应颜色的提示栏,鼠标放置上去会有提示效果出现。

<div>
<canvas id = "canvas"></canvas>
</div>
<div id = "legend"></div>
<script>
var data = [
{
value: 300,
color: "#fdd",
label: "red"
},
{
value: 50,
color: "#435",
label: "yellow"
}
];
var helpers = Chart.helpers;
var ctx = document.getElementById("canvas").getContext("2d");
var myDoughnutChart = new Chart(ctx).Doughnut(
data,{
animateRotate: true
});
var legendHolder = document.getElementById("legend");
legendHolder.innerHTML = myDoughnutChart.generateLegend();
helpers.each(legendHolder.firstChild.childNodes,function(legendNode,index){
var activeSegment = myDoughnutChart.segments[index];
activeSegment.save();
myDoughnutChart.showTooltip([activeSegment]);
activeSegment.restore();
});
helpers.addEvent(legendNode,'click',function(){
var activeSegment1 = myDoughnutChart.segments[index];
alert(activeSegment1.value);
});
});
helpers.addEvent(legendHolder.firstChild,'mouseout',function(){
myDoughnutChart.draw();
});
myDoughnutChart.chart.canvas.parentNode.parentNode.appendChild(legendHolder.firstChild);
</script>

chart.js画图相关推荐

  1. Chart.js清空canvas画布 clearRect()等canvas方法擦除失败(附完整代码)

    Chart.js清空canvas画布 clearRect等canvas方法擦除失败 一.直接移除DOM对象方式 原因 方法 二.完整代码 html javascript chart.js画图方法 三. ...

  2. Chart.js使用

    下载chart.js,直接放到你的网页里: https://cdnjs.cloudflare.com/ajax/libs/Chart.js/1.0.2/Chart.min.js 首先你要在页面里有个标 ...

  3. Rails-treasure chest4: 使用图表对资料进行分析chart.js(及其他);管理用户权限的gem 'Pumdit'(6000)...

    * 多档案上传 * 图表资料分析  Chartkick gem或者 chart.js * 用户权限控管  gem Pundit (6000✨) * HTML E-mail 寄送 : gem prema ...

  4. 原生html js css绘制折现图,HTML5教程 Chart.js自定义提示折线图

    本篇教程探讨了HTML5教程 Chart.js自定义提示折线图,希望阅读本篇文章以后大家有所收获,帮助大家HTML5+CSS3从入门到精通 . < var randomScalingFactor ...

  5. java 实现雷达图,如何使用y轴为0到100的chart.js创建雷达图?

    我目前正在使用Chart.js将我的数据显示为雷达图 . 我面临的问题是,每次我向页面添加数据时,它都会将最大值设置为表中最高值 . 我需要它从0到100的Y轴开始 . 我正在使用Chart.js v ...

  6. JS组件系列——开源免费图表组件:Chart.js

    前言:最近被开源免费得有点上火了,各种组件首先想到的就是是开源否.是否免费.是否和bootstrap风格一致.想着以后做报表肯定要用到图表组件的,于是在Bootstrap中文网上面找到了Chart.j ...

  7. Vue——vue-chartjs[Vue 对于 Chart.js 的封装]

    基本概念 vue-chartjs:vue-chartjs is a wrapper for Chart.js in vue. You can easily create reuseable chart ...

  8. python 图表 web_Web | Django 与 Chart.js 联用做出精美的图表

    class Country(models.Model):name = models.CharField(max_length=30)class City(models.Model):name = mo ...

  9. chart.js绘制精美的数据化图形--入门示例

    参考:http://think.zvan.com.cn/code/js/2014/0607/247.html 这个库基于html5,在360极速浏览器和firefox中测试通过. <html&g ...

最新文章

  1. mybatis plus 插入生成id_springcloud微服务快速教程之分布式ID解决方案(mybatisplus篇)...
  2. 客户端,服务器,天气预报
  3. JQ:当页面滚动到一定位置之后,让元素固定在顶部,小于位置后恢复原来的位置
  4. 虚拟化之四:虚拟化备份策略已成数据安全的焦点!
  5. oracle sql语句 exists
  6. PHP 文件夹操作「复制、删除、查看大小」递归实现
  7. Chromium Embedded Framework中文文档之(基本使用)
  8. “Master”连胜世界围棋冠军,谁是幕后智能引擎?
  9. 士林变频器面板如何调速度_工业电气设计|变频器在应用中的故障处理实例分享...
  10. java当前时间长整数值_在Java中获取当前年份的整数值
  11. Debian, Ubuntu 和 Linux Mint 中安装WPS
  12. 第十三届蓝桥杯A组Python组心得分享
  13. Linux --配置网络(通过网络访问服务器)
  14. 个人成长:2021年8月记
  15. 网页中图片无法显示解决方法
  16. 三星android手机工程模式设置中文,三星工程模式怎么进入?三星手机进入工程模式方法...
  17. 软件工程应届生面试题
  18. C语言_malloc动态开辟内存空间
  19. 无线路由器---基本知识
  20. Source Insight 许可证激活与停用

热门文章

  1. 2020王者营地服务器维护,至尊宝重磅返场,王者营地服务器崩溃,只因玩家等待了五年的它...
  2. kestrel虚拟服务器,如何使Kestrel Web服务器监听非本地主机的请求?
  3. 使用Hyper-V集群和存储功能以达到HA
  4. 自媒体平台为什么总在强调垂直度,这里有你想要的答案!
  5. python中噪音是什么意思_Perlin噪声和Python的ctypes
  6. HDMI 1.4 协议详解
  7. 嵌入式系统开发笔记78:电话、电报发明给予我们的启示
  8. 在BF561上实现h264编码的几种方案
  9. Oracle启动错误:ORA-00821: Specified value of sga_target 2352M is too small, needs to be at least 4352M
  10. pom 备注_POMGH-25POMGH-25