<script>
$(function () {
var areasplineData = [[1447916401000,3],[1447918201000,4]];
var typeRange = 8640000; //变量
Highcharts.setOptions({global:{useUTC : false}}); $('#container').highcharts({
chart: {
type: 'area'
},
global: {
useUTC: false
},
title: {
text: '<b>总人数统计</b>'
},
subtitle: {
text: ''
},
xAxis: {
allowDecimals: false, //x 轴不允许小数
type: "datetime",
minRange: typeRange, //最小范围 //变量 dateTimeLabelFormats:
{
millisecond: '%H:%M',
second: '%e日 %H:%M',
minute: '%e日 %H:%M',
hour: '%m月%e日 %H:%M',
day: '%m月%e日',
week: '%e. %b',
month: '%y年%m月',
year: '%Y年'
}
},
yAxis: {
title: {
text: '人数'
},
labels: {
formatter: function() {
return this.value + '人';
}
}
},
tooltip: {
shared: true,
valueSuffix: '人',
xDateFormat: '%Y-%m-%d %H:%M:%S'
},
plotOptions: {
area: {
allowPointSelect :false,//是否允许选中点
lineWidth:1,//线条粗细
pointStart: typeRange,//变量
animation:true,//是否在显示图表的时候使用动画
cursor:'pointer',//鼠标移到图表上时鼠标的样式
dataLabels:{
enabled :false,//是否在点的旁边显示数据
rotation:0
},
enableMouseTracking:true,//鼠标移到图表上时是否显示提示框
events:{ //监听点的鼠标事件
click: function() { }
},
marker: {
enabled: false, //是否显示点
symbol: 'circle',
radius: 1,//点的半径
states: {
hover: {
enabled: false //鼠标放上去点是否放大
},
select:{
enabled:false//控制鼠标选中点时候的状态
}
}
},
states:{
hover:{
enabled:false,//鼠标放上去线的状态控制
lineWidth:3
}
},
},
},
series: [{
name: '人数',
data: areasplineData
}],
/*修改右下角标注*/
credits:{
text:"www.microgolds.com",
url:"http://www.microgolds.com",
style:{
color:"red"
}
}
});
});
</script>

<script type="text/javascript" src="/st/js/graph/jQuery.js" ></script>
<script src="/st/js/graph/highcharts.js"></script>
<script src="/st/js/graph/modules/exporting.js"></script>
<script>
$(function () {
var areasplineData = {$data};
var areasplineregister = {$register};
var areasplineguest = {$guest};
var areasplinemt4_yes = {$mt4_yes};
var areasplinemt4_no = {$mt4_no};
var areasplineclient_pc = {$client_pc};
var areasplineclient_app = {$client_app}; var typeRange = {$typeRange}; //变量
var titleName = "{$roomname}" +"总人数统计";
Highcharts.setOptions({global:{useUTC : false}}); $('#container').highcharts({
chart: {
type: 'spline'
},
global: {
useUTC: false
},
title: {
text: '<b>'+ titleName +'</b>'
},
subtitle: {
text: ''
},
xAxis: {
allowDecimals: false, //x 轴不允许小数
type: "datetime",
minRange: typeRange, //最小范围 //变量 dateTimeLabelFormats:
{
millisecond: '%H:%M',
second: '%e日 %H:%M',
minute: '%e日 %H:%M',
hour: '%m月%e日 %H:%M',
day: '%m月%e日',
week: '%m月%e日',
month: '%y年%m月',
year: '%Y年'
}
},
yAxis: {
min: 0,
title: {
text: '人数'
},
labels: {
formatter: function() {
//console.log(this);
return this.value + '人';
}
}
},
tooltip: {
shared: true,
valueSuffix: '人',
xDateFormat: '%Y-%m-%d',
formatter : function(){ function accDiv(arg1,arg2){
var t1=0,t2=0,r1,r2;
try{t1=arg1.toString().split(".")[1].length}catch(e){}
try{t2=arg2.toString().split(".")[1].length}catch(e){}
with(Math){
r1=Number(arg1.toString().replace(".",""))
r2=Number(arg2.toString().replace(".",""))
return (r1/r2)*pow(10,t2-t1);
}
}
var times = new Date(parseInt(this.points[0].key)).toLocaleString().substr(0,10).replace(/\//g, "-");
var str = '<span style="font-size: 12px">' + times + '</span><br/>';
for (var i in this.points)
{
if (typeof(this.points[i]) != "object"){ continue; } if (i == 0){
str += '<span style="font-size: 12px">当日总人数:'+this.points[i].y+'人</span><br/>';
}else if (i == 1){
var val = parseFloat(accDiv(parseInt(this.points[1].y), parseInt(this.points[0].y)).toFixed(4)*100); str += '<span style="font-size: 12px">总游客人数:'+this.points[i].y+'人 占比'+ (val+'').substr(0,(val+'').indexOf(".")+3) +'%</span><br/>';
}else if (i == 2){
var value = parseFloat(accDiv(parseInt(this.points[2].y), parseInt(this.points[0].y)).toFixed(4)*100); str += '<span style="font-size: 12px">总注册人数:'+this.points[i].y+'人 占比'+ (value+'').substr(0,(value+'').indexOf(".")+3) +'%</span><br/>';
}else if (i == 3){
var value =parseFloat(accDiv(parseInt(this.points[3].y), parseInt(this.points[0].y)).toFixed(4)*100);
str += '<span style="font-size: 12px">真实客户人数:'+this.points[i].y+'人 占比'+ (value+'').substr(0,(value+'').indexOf(".")+3) +'%</span><br/>';
}else if (i == 4){
var value = parseFloat(accDiv(parseInt(this.points[4].y), parseInt(this.points[0].y)).toFixed(4)*100);
str += '<span style="font-size: 12px">普通客户人数:'+this.points[i].y+'人 占比'+ (value+'').substr(0,(value+'').indexOf(".")+3) +'%</span><br/>';
}else if (i == 5){
var value = parseFloat(accDiv(parseInt(this.points[5].y), parseInt(this.points[0].y)).toFixed(4)*100);
str += '<span style="font-size: 12px">PC端听课人数:'+this.points[i].y+'人 占比'+ (value+'').substr(0,(value+'').indexOf(".")+3) +'%</span><br/>';
}else if (i == 6){
var value = parseFloat(accDiv(parseInt(this.points[6].y),parseInt(this.points[0].y)).toFixed(4)*100);
str += '<span style="font-size: 12px">移动端听课人数:'+this.points[i].y+'人 占比'+ (value+'').substr(0,(value+'').indexOf(".")+3) +'%</span><br/>';
}
}
return str;//这里随便你返回什么东西吧
},
},
plotOptions: {
spline: {
allowPointSelect :false,//是否允许选中点
lineWidth:1,//线条粗细
fillOpacity: 0.5,
pointStart: typeRange,//变量
animation:true,//是否在显示图表的时候使用动画
cursor:'pointer',//鼠标移到图表上时鼠标的样式
dataLabels:{
enabled :false,//是否在点的旁边显示数据
rotation:0
},
enableMouseTracking:true,//鼠标移到图表上时是否显示提示框
events:{ //监听点的鼠标事件
click: function() { }
},
marker: {
enabled: false, //是否显示点
symbol: 'circle',
radius: 2,//点的半径
states: {
hover: {
enabled:true //鼠标放上去点是否放大
},
select:{
// enabled:false//控制鼠标选中点时候的状态
}
}
},
states:{
hover:{
enabled:true,//鼠标放上去线的状态控制
lineWidth:1
}
},
},
},
series: [{
color: '#CC0000',
name: "总人数",
data: areasplineData
},{
color: '#227700',
name: "总游客人数",
data: areasplineguest
},{
color: '#888800',
name: "总注册人数",
data: areasplineregister
},{
color: 'green',
name: "真实客户人数",
data: areasplinemt4_yes
},{
color: '#77FFEE',
name: "普通客户人数",
data: areasplinemt4_no
},{
color: '#220088',
name: "PC端听课人数",
data: areasplineclient_pc
},{
color: '#FF3EFF',
name: "移动端听课人数",
data: areasplineclient_app
}],
/*修改右下角标注*/
credits:{
text:"www.microgolds.com",
url:"http://www.microgolds.com",
style:{
color:"red"
}
}
});
});
</script>

Highcharts做统计图。的更多相关文章

  1. highcharts实现统计图效果

    highcharts实现统计图效果 ① 根据需求确定需要使用的案例图 把这个界面的html模板文件复制出来,放入./Application/Admin/View/User下改名为chart.html ...

  2. highcharts基本配置和使用highcharts做手机端图标

    使用highcharts三个理由:1>手机适配2>大数据的支持3>svg的优势缺点:不开源.学习资料少 官方有基本的常规用法,一般都是基于jquery写的例子,也可以自己封装函数,用 ...

  3. statpot:使用mongo+bootstrap+highcharts做统计报表

    最近做了一个统计项目,这个统计项目大致的需求是统计接口的访问速度.客户端会调用一个接口来记录接口的访问情况,我的需求就需要分析这些数据,然后做出个统计报表. 需求实现 最初的时候想着每天把这些接口访问 ...

  4. 应用highcharts做直观数据统计

    最近在看上了统计类的东东,发现以前端图表神器:highcharts Highcharts是一款功能强大.开源.美观.图表丰富.兼容绝大多数浏览器的纯Js图表库,Highcharts支持的图表类型有直线 ...

  5. MVC使用Dotnet.HighCharts做图表01,区域图表

    如果想在MVC中使用图表显示的话,DotNet.HighCharts是不错的选择.DotNet.HighCharts是一个开源的JavaScript图表库,支持线型图表.柱状图标.饼状图标等几十种图标 ...

  6. Highcharts做柱状图怎样样每个柱子都是不同的颜色显示

    series: [{ data: [{'color':'#F6BD0F','y':11}, {'color':'#AFD8F8','y':12}, {'color':'#8BBA00','y':13} ...

  7. highcharts分段显示不同颜色

    最近在做统计图的时候,碰到一个需求 类似如下: 就是在红色虚线框内的折线在不同区域用不同的颜色表示,并且是虚线. 开始定位为用highcharts库实现.确定用这个库后,开始在网上查资料,发现有类似的 ...

  8. asp.net MVC项目开发之统计图的使用(前言)

    接触这个项目,是项目组长已经完成了多数需求,并且有2个项目需要完工的情况下,让我加入,给了我2个表格,让我去设计出统计图.      第一次做统计图,可以说没有任何经验,不知道该如何下手,表格的数据量 ...

  9. highcharts曲线图

    在做项目时,用highcharts做过曲线图,X轴是从后台获取的时间数据,Y轴是从后台获取的Int型数据 1.我的后台数据封装成json格式,数据较多,展示部分数据 2.曲线图的展示 3.前端jsp页 ...

随机推荐

  1. CTSC/APIO2018 帝都一周游

    day0 报道 上午早早就起来了,两点才到酒店,然后去简单试了试机子. 不得不说今年八十中的伙食变得瓜皮了啊,去年还是大叠的5元卷,今年变成了单张的*餐卷.不知道食堂吝啬什么,面条米饭都只有一点点,还 ...

  2. github删除文件夹

    git rm -rf dirgit add .git commit -m 'remove dir'git push origin master //dir是要删除的文件夹路径

  3. 寻找kernel32.dll的地址

    为了寻找kernel32.dll的地址,可以直接输出,也可以通过TEB,PEB等查找. 寻找TEB: dt _TEB nt!_TEB +0x000 NtTib : _NT_TIB +0x01c Env ...

  4. printk %pF %pS含义【转】

    作者:啐楼链接:https://www.zhihu.com/question/37769890/answer/73532192来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出 ...

  5. ES的优化布局

    分词优化:IK Analyser Elastic Search 5.x官方提供的中文搜索并不友好,分词时经常将一句话分成很多单字,这时候可以使用IK Analyser插件进行优化,当然你在写java代 ...

  6. JavaScript原型与继承(1)

    内容: 创建对象的几种模式以及创建的过程 原型链prototype的理解,以及prototype与 __proto__([[Prototype]])的关系 继承的几种实现 1.常见模式与原型链的理解 ...

  7. vue点击切换颜色限制个数(用了mui框架)

    vue点击切换颜色 只能点击一个 <!doctype html> <head> <meta charset="UTF-8"> <title ...

  8. HTML5API(2)

    四.文件API 1.概述 H5允许JS有条件的读取客户端文件 允许读取的文件:1.待上传的文件2.拖进浏览器的文件 多文件上传设置属性multiple 过滤上传文件类型 设置accept属性 acce ...

  9. 1.Python3标准库--前戏

    Python有一个很大的优势便是在于其拥有丰富的第三方库,可以解决很多很多问题.其实Python的标准库也是非常丰富的,今后我将介绍一下Python的标准库. 这个教程使用的书籍就叫做<Pyth ...

  10. Exchanger学习

    Java并发新构件之Exchanger JDK API Exchaner 介绍 JDK API 解释 A synchronization point at which threads can pair ...