当前位置: 首页 > news >正文

html5按钮组水平均分,ichart.js绘制虚线、平均分虚线效果的实现代码_javascript技巧...

ichart.js绘制虚线、平均分虚线效果的实现代码

var Data=new Array(); Data[0] = { labels : ["第一单元","第二单元","第三单元","第四单元","第五单元"], datasets : [ { name : '优秀率', color:'#1dbcfe', line_width:4, value : [80,75,92,62,0] } ] } Data[1] = { labels : ["第一单元","第二单元","第三单元","第四单元","第五单元"], datasets : [ { name : '优秀率', color:'#1dbcfe', line_width:4, value : [50,11,62,77,90] } ] } Data[2] = { labels : ["第一单元","第二单元","第三单元","第四单元","第五单元"], datasets : [ { name : '优秀率', color:'#1dbcfe', line_width:4, value : [80,51,32,44,80] } ] } var _bodyWidth=$('body').width()-16; $('.item').each(function(i){ var _id=$(this).find('.canvas-wrap').attr('id'); var chart = new iChart.LineBasic2D({ render : _id, data: Data[i].datasets, align:'center', border:0, width : _bodyWidth*2, height : _bodyWidth*1.2, background_color:'#fafafa', animation : true,//开启过渡动画 animation_duration:600,//600ms完成动画 sub_option : { smooth : true, hollow:false, hollow_inside:false, point_size:16, listeners : { parseText : function(r, t) { return t+'%'; } }, label:{fontsize:24,color:'#333'}, }, coordinate:{ width:_bodyWidth*1.6, valid_width:_bodyWidth*1.4, height:_bodyWidth*1.6*.5, striped_factor : 0.18, axis:{ color:'#aaa', width:[0,0,8,0] }, scale:[{ position:'left', start_scale:0, end_scale:100, scale_space:20, scale_size:2, scale_enable : false, label : {color:'#999',fontsize:24}, scale_color:'#999' },{ position:'bottom', label : {color:'#999',fontsize:24}, scale_enable : false, labels:Data[i].labels }] } }); /** *自定义组件,画平均线。 */ chart.plugin(new iChart.Custom({ drawFn:function(){ /** *计算平均值的高度(坐标Y值) */ var _total=0; $.each(Data[i].datasets[0].value,function(i,val){ _total+=val; }); var avg = _total/Data[i].datasets[0].value.length,//计算出的平均分写在这即可 coo = chart.getCoordinate(), x = coo.get('originx'), W = coo.width, S = coo.getScale('left'), H = coo.height, h = (avg - S.start) * H / S.distance, y = chart.y + H - h; for(xi=x;xi<=(x+W);xi=xi+32){ chart.target.line(xi,y,xi+16,y,2,'#fe941c'); } chart.target.textAlign('start') .textBaseline('middle') .textFont('500 20px Verdana') .fillText('平均战胜率'+avg+'%',x+W-100,y-20,false,'#fe941c'); } })); chart.draw(); });

以上代码是绘制多个折线图的js示例,以及在每个折线图内绘制平均分虚线的方法。

ichart.js是一个十分不错的图标绘制js,缺点是在移动端需要先设置两倍大小,再用css和js手动缩小到正常范围,以使其在屏幕上保持高清。

官网有绘制平均线的示例,但是没有虚线的,而一般为了不混淆,平均线都是使用虚线绘制的。这里我只是循环绘制了n端直线,算是一个变通的方法。如有更好的方法请留言哦谢谢。

以上这篇ichart.js绘制虚线、平均分虚线效果的实现代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章:

  • 学计算机可以考统计师吗,统计师如何备考呢?
  • html 发光字,介绍几种常见发光字的制作步骤方法
  • html中元相关元素包括,tabs_panels.html
  • 计算机专业论文周进展300字,毕业设计周进展记录模板
  • 计算机网络第3班第六章,计算机网络教程第3版彭澎第6章J课件教学.ppt
  • 计算机二级数据透视图教程,计算机二级语言数据透视表做法
  • 计算机语言符号通配符,day 15 通配符和特殊符号
  • 计算机类英文参考文献,计算机英文参考文献.doc
  • 北京化工大学计算机组成原理考试,2017年北京化工大学信息科学与技术学院408计算机学科专业基础综合之计算机组成原理考研仿真模拟题...
  • 柱面是什么计算机组成原理,计算机组成原理
  • 英语教学计划软件测试,第一学期英语教学计划
  • 绿盟科技软件测试招聘,【绿盟科技软件测试面试】面试官很随和-看准网
  • 计算机导师电话面试,【条条大路通CS】计算机导师电话面试记录
  • 计算机开机后 打不开软件,电脑开机后软件打不开怎么回事
  • 穿越火线找回装备服务器,装备丢失也不怕 CF手游遗失分解装备找回攻略
  • python3.6+scrapy+mysql 爬虫实战
  • (十五)java多线程之并发集合ArrayBlockingQueue
  • 10个确保微服务与容器安全的最佳实践
  • Fastjson的基本使用方法大全
  • Gradle 5.0 正式版发布
  • Java知识点总结(JDBC-连接步骤及CRUD)
  • JS专题之继承
  • Redux 中间件分析
  • Spring Cloud Feign的两种使用姿势
  • text-decoration与color属性
  • 不发不行!Netty集成文字图片聊天室外加TCP/IP软硬件通信
  • 通过来模仿稀土掘金个人页面的布局来学习使用CoordinatorLayout
  • 我建了一个叫Hello World的项目
  • 白色的风信子
  • Java总结 - String - 这篇请使劲喷我
  • ​3ds Max插件CG MAGIC图形板块为您提升线条效率!
  • ​人工智能书单(数学基础篇)
  • # C++之functional库用法整理
  • #{}和${}的区别是什么 -- java面试
  • (C语言)字符分类函数
  • (NSDate) 时间 (time )比较
  • (ZT)出版业改革:该死的死,该生的生
  • (附源码)springboot太原学院贫困生申请管理系统 毕业设计 101517
  • (十二)python网络爬虫(理论+实战)——实战:使用BeautfulSoup解析baidu热搜新闻数据
  • (十三)Maven插件解析运行机制
  • (实战篇)如何缓存数据
  • (转)Oracle 9i 数据库设计指引全集(1)
  • (转)Spring4.2.5+Hibernate4.3.11+Struts1.3.8集成方案一
  • (转)Windows2003安全设置/维护
  • (转载)(官方)UE4--图像编程----着色器开发
  • ***监测系统的构建(chkrootkit )
  • .NET 4 并行(多核)“.NET研究”编程系列之二 从Task开始
  • .NET Core 中插件式开发实现
  • .NET Core跨平台微服务学习资源
  • .net on S60 ---- Net60 1.1发布 支持VS2008以及新的特性
  • .NET的微型Web框架 Nancy
  • .net中生成excel后调整宽度
  • @entity 不限字节长度的类型_一文读懂Redis常见对象类型的底层数据结构
  • @JSONField或@JsonProperty注解使用
  • @Transactional 竟也能解决分布式事务?