<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>这是线性图</title>
<link type="text/css" rel="stylesheet" href="jqplotjs/examples/syntaxhighlighter/styles/shCoreDefault.min.css" />
<link type="text/css" rel="stylesheet" href="jqplotjs/examples/syntaxhighlighter/styles/shThemejqPlot.min.css" />
<link rel="stylesheet" type="text/css" href="easyui/css/themes/default/easyui.css">
<link rel="stylesheet" type="text/css" href="easyui/css/themes/icon.css">
<link rel="stylesheet" type="text/css" href="easyui/css/demo.css">
<script type="text/javascript" src="easyui/jquery.min.js"></script>
<script class="include" type="text/javascript" src="jqplotjs/jquery.min.js"></script>
<script type="text/javascript" src="easyui/jquery.easyui.min.js"></script>
<script class="include" type="text/javascript" src="jqplotjs/jquery.jqplot.min.js"></script>
<script type="text/javascript" src="jqplotjs/plugins/jqplot.categoryAxisRenderer.min.js"></script>
<script type="text/javascript" src="jqplotjs/plugins/jqplot.highlighter.min.js"></script>
<script type="text/javascript" src="jqplotjs/plugins/jqplot.pointLabels.min.js"></script>
<!--放大-->
<script class="include" type="text/javascript" src="jqplotjs/plugins/jqplot.cursor.min.js"></script>
<!--必不可少的-->
<script class="include" type="text/javascript" src="jqplotjs/plugins/jqplot.dateAxisRenderer.min.js"></script>
<script type="text/javascript" src="jqplotjs/js/myOwn.js"> </script>
</head>
<body>
<input type="button" id="btn_lastDay" value="上一天"/><input type="button" id="btn_nextDay" value="下一天"/>
起始时间:<input class="easyui-datetimebox" name="paramStart" id="paramStart"> 结束时间: <input class="easyui-datetimebox" name="paramEnd" id="paramEnd"> <input type="button" value="查询" id="getForLongTime"/>
<div id="chart1" data-height="260px" data-width="480px" style="margin-top:20px; margin-left:20px;"></div>
<div id="chart2" data-height="260px" data-width="480px" style="margin-top:20px; margin-left:20px;"></div>
<script class="code" type="text/javascript">
//定义传递的时间参数变量
var paraTime = dateChange(new Date());
//单击前一天,获取上天的数据
$("#btn_lastDay").click(function(){
$("#btn_nextDay").css('display','block');
var chart1Div=document.getElementById("chart1");
if(chart1Div != null){
p = chart1Div.parentNode;
p.removeChild(chart1Div); //删除一个div
var createDiv = document.createElement("div");
createDiv.id = "chart1";
document.body.appendChild(createDiv); //创建一个div
}
paraTime = getLastDay(paraTime);
getData(1,paraTime)
});
//单击获取后一天的数据
$("#btn_nextDay").click(function(){
paraTime = getNextDay(paraTime);
if(paraTime > dateChange(new Date()))
{
alert("亲,还没有到" + paraTime + "者天哦,显示的还是今天的数据");
paraTime = getLastDay(paraTime);
}else{
var chart1Div=document.getElementById("chart1");
if(chart1Div != null){
p = chart1Div.parentNode;
p.removeChild(chart1Div); //删除一个div
var createDiv = document.createElement("div");
createDiv.id = "chart1";
document.body.appendChild(createDiv); //创建一个div
}
getData(1,paraTime);
}
});
//获取一段时间里面的数据
$("#getForLongTime").click(function(){
$("#chart1").css('display','none');
var chart1Div=document.getElementById("chart2");
if(chart1Div != null){
p = chart1Div.parentNode;
p.removeChild(chart1Div); //删除一个div
var createDiv = document.createElement("div");
createDiv.id = "chart2";
document.body.appendChild(createDiv); //创建一个div
}
var paraStart = $("#paramStart").datetimebox('getValue')+"";
var paraEnd = $("#paramEnd").datetimebox('getValue')+"";
paraStart = dateChange(paraStart);
paraEnd = getNextDay(paraEnd);
var ajaxDataRenderer = function(url, plot, options) {
var ret =[] ;
$.ajax({
async: false,
url: url,
dataType:"json",
success: function(data) {
var dataList=[]; //用来存放最终数据的一个数组
var temList=[]; //用来存放温度的数组
var hList=[]; //用来存放湿度的数组
$.each(data, function (i, datas) { //遍历每个花括号
if(i==0){ //表示的是存放温度的一个花括号里面的数据
for(var item in datas){
var tem=[];
tem.push(item); //item是那个键,比如时间
tem.push(datas[item]); //datas[item]获取那个键对应的值
temList.push(tem); //把上面获取到的一组数据存放到一个数据里面
}
}else{ //其他的表示存放的是存放湿度的一个花括号
for(var item in datas){
var hum=[];
hum.push(item);
hum.push(datas[item]);
hList.push(hum);
}
}
});
dataList.push(temList);
dataList.push(hList);
ret=dataList;
}
});
return ret;
};
var jsonurl = "json/getLogTemperature.d?flag=2¶mStart="+paraStart+"¶mEnd="+paraEnd;
var plot1 = $.jqplot('chart2', jsonurl, {
title: '温湿度显示图',
title: "温湿度显示图",
animate: true, //将线条缓缓的加载出来
dataRenderer: ajaxDataRenderer, //外部数据加载方式
dataRendererOptions: {
unusedOptionalUrl: jsonurl
},
seriesDefaults: { //将线以弯曲的形式显示
rendererOptions: {
smooth: true
}
},
series: [{},{yaxis:'y2axis'}],
axesDefaults:{ //axesDefaults指定的参数配置,适用于所有轴。这里是指x,y轴的label用canvas画出
useSeriesColor:true//如果有多个纵(横)坐标轴,通过该属性设置这些坐标轴是否以不同颜色显示
},
axes: {
xaxis: {
renderer:$.jqplot.DateAxisRenderer,
tickRenderer: $.jqplot.CanvasAxisTickRenderer,
tickOptions: {
angle: -30,
formatString: '%Y-%m-%d'
} ,
label:'时间'
},
yaxis: {
label:'温度',
tickOptions:{
labelPosition: 'middle',
angle:-30
},
rendererOptions: {
forceTickAt0: true
}
},
y2axis: {
label:'湿度',
tickOptions:{
labelPosition:'middle',
angle:-30
},
rendererOptions: {
alignTicks: true,
forceTickAt0: true
}
}
},
cursor:{
show: true,
zoom: true
}
});
});
$(document).ready(
getData(1,paraTime)
);
function getData(flag,parameterTime){
var ajaxDataRenderer = function(url, plot, options) {
var ret = "{}" ;
$.ajax({
async: false,
url: url,
dataType:"json",
success: function(data) {
var dataList=[]; //用来存放最终数据的一个数组
var temList=[]; //用来存放温度的数组
var hList=[]; //用来存放湿度的数组
$.each(data, function (i, datas) { //遍历每个花括号
if(i==0){ //表示的是存放温度的一个花括号里面的数据
for(var item in datas){
var tem=[];
tem.push(item); //item是那个键,比如时间
tem.push(datas[item]); //datas[item]获取那个键对应的值
temList.push(tem); //把上面获取到的一组数据存放到一个数据里面
}
}else{ //其他的表示存放的是存放湿度的一个花括号
for(var item in datas){
var hum=[];
hum.push(item);
hum.push(datas[item]);
hList.push(hum);
}
}
});
dataList.push(temList);
dataList.push(hList);
ret=dataList;
}
});
if(ret==","){
alert(parameterTime + ":这天没有记录");
}
return ret;
};
var jsonurl = "json/getLogTemperature.d?flag="+flag+"¶meterTime="+parameterTime;
$.jqplot.config.enablePlugins = true;
var plot1 = $.jqplot('chart1', jsonurl, {
title: "温湿度显示图",
animate: true, //将线条缓缓的加载出来
dataRenderer: ajaxDataRenderer, //外部数据加载方式
dataRendererOptions: {
unusedOptionalUrl: jsonurl
},
seriesDefaults: { //将线以弯曲的形式显示
rendererOptions: {
smooth: true
}
// showMarker: true
},
series:[{},{yaxis:'y2axis'}], //series参数是一个对象数组,一个对象对应一组数据 ,主要是为了显示两个y轴
axesDefaults:{ //axesDefaults指定的参数配置,适用于所有轴。这里是指x,y轴的label用canvas画出
useSeriesColor:true//如果有多个纵(横)坐标轴,通过该属性设置这些坐标轴是否以不同颜色显示
},
axes: {
xaxis: {
renderer:$.jqplot.CategoryAxisRenderer, // x轴用数据里面的数组第一个元素
label:'时间'
},
yaxis: {
label:'温度',
tickOptions:{
labelPosition: 'middle',
angle:-30
},
rendererOptions: {
forceTickAt0: true
}
},
y2axis: {
label:'湿度',
tickOptions:{
labelPosition:'middle',
angle:-30
},
rendererOptions: {
alignTicks: true,
forceTickAt0: true
}
}
}, highlighter: { //当鼠标移到上面时将数据显示出来
show: true,
showLabel: true,
tooltipAxes: 'y',
sizeAdjust:01 , tooltipLocation : 'ne'
}
});
}
</script>
</body>
</html>
</pre><pre name="code" class="html"><span style="font-family: Arial, Helvetica, sans-serif;">效果图</span>
<img src="https://img-blog.csdn.net/20140722110019411?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMDI1NjE3Nw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />