效果图
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0"><!-- 初始化移动浏览显示 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge"> <!-- 在IE运行最新的渲染模式 -->
<title>久爱物联网温度曲线示意图</title>
<style type="text/css">
.wdline {
height: 300px;
min-width: 350px;
width: 100% !important;
}
</style>
</head>
<body>
<script src="http://echarts.baidu.com/build/dist/echarts.js"></script>
<script type='text/javascript'>
require.config({
paths: {
echarts: 'http://echarts.baidu.com/build/dist'
}
});
// 指定图表的配置项和数据初始化数据(如果不写将空白无法推送数据)
var dataTM = ['0:0:0', '0:0:0', '0:0:0', '0:0:0', '0:0:0', '0:0:0', '0:0:0', '0:0:0', '0:0:0', '0:0:0', '0:0:0', '0:0:0'];//维度的个数 决定横向坐标轴数量
var dataWD =[0,0,0,0,0.0,0,0,0,0,0.0,0,0];
var dataSD =[0,0,0,0,0.0,0,0,0,0,0.0,0,0];
option = {
title: {
text: '久爱物联网',//图表标题
subtext: 'jiuai.ltd',
fontSize: 10,
//x:'center'//标题位置定义,默认left
},
tooltip: {
trigger: 'axis', //坐标轴触发提示框,多用于柱状、折线图中
//控制提示框内容输出格式
axisPointer: {
type: 'cross',
label: {
backgroundColor: '#283b56'
}
},
formatter: '<font color=#00FFFF>● </font>时间:{b0}<br/><font color=#FF3333>● </font>{a0} {c0}' +
'<br/><font color=#53FF53>● </font>{a1} {c1}'
},
dataZoom: [
{
show: false,
type: 'slider', //支持鼠标滚轮缩放
start: 0, //默认数据初始缩放范围为10%到90%
end: 100
},
{
show: false,
type: 'inside', //支持单独的滑动条缩放
start: 0, //默认数据初始缩放范围为10%到90%
end: 100
}
],
legend: { //图表上方的类别显示 图例
show:true,
data:['温度(℃)','湿度(%)']//必须和 series 中定义的一样
},
toolbox: {
show: true,
feature: {
dataView: {readOnly: false},
restore: {},
saveAsImage: {}
}
},
backgroundColor: 'rgba(255,255,255,0.1)',// 背景颜色RGB,透明度0-1
xAxis: {
type: 'category',//category
boundaryGap: true,
name:'时间轴',
splitLine: {
show: false
},
axisLabel: {
color: '#fff',
fontSize: 12
},
//data: dataTM
data: (function (){
var now = new Date();
var res = [];
var len = 12;
while (len--) {
res.unshift(now.toLocaleTimeString('chinese',{hour12:false}).replace(/^\D*/,''));
now = new Date(now - 1000);
}
return res;
})()
},
yAxis:
[{
type: 'value',
name : '温度℃',
max: 100,//y轴最大值
min: -10,
axisLabel :
{//y标签格式
//color: '#fff',
//fontSize: 12,
//formatter: '{value} ℃' //y轴显示格式 控制输出格式
}
},{
type: 'value',
name : '湿度RH%',
max: 100,//y轴最大值
min: 0,
axisLabel :
{//y标签格式
//color: '#fff',
fontSize: 12,
//formatter: '{value} RH%' //y轴显示格式 控制输出格式
}
}],
series: [
{
name:'温度(℃)',//图例名称
data: dataWD,
type: 'bar',
symbol:'emptycircle', //设置折线图中表示每个坐标点的符号;emptycircle:空心圆;emptyrect:空心矩形;circle:实心圆;emptydiamond:菱形
smooth: true//true 为平滑曲线,false为直线
},
{
name:'湿度(%)',
type:'line',
// showSymbol: false,
symbol:'circle',//去掉折线图中的节点
hoverAnimation: true,
data:dataSD
}
]
};
require(
[
'echarts',
'echarts/chart/line',//需要折线图则加载line模块
'echarts/chart/bar' // 使用柱状图就加载bar模块,按需加载
],
function (ec)
{//if (option && typeof option === "object")
myChart = ec.init(document.getElementById('wd_echarts'));
myChart.setOption(option);
});
//定时刷新数据(10秒)
appcount=1;
setInterval(function () {
var option = myChart.getOption();
var axisData = (new Date()).toLocaleTimeString('chinese',{hour12:false});//.replace(/^\D*/, '')
var data0 = option.series[0].data;//温度
var data1 = option.series[1].data;//湿度
var dhtwd=(Math.random() * 45 + 1).toFixed(1);
//动态更新值
data0.shift();//温度
data0.push(dhtwd - 0);
if(dhtwd<27)option.backgroundColor='rgba(188,188,255,0.8)';//不同温度区域 背景色随着变
if(dhtwd>=27)option.backgroundColor='rgba(255,230,205,0.8)';
if(dhtwd>=30)option.backgroundColor='rgba(255,200,0,0.8)';
if(dhtwd>=35)option.backgroundColor='rgba(255,150,0,0.8)';
data1.shift();//湿度
data1.push((Math.random() * 100 + 0).toFixed(1) - 0);
option.xAxis[0].data.shift();//x坐标轴
option.xAxis[0].data.push(axisData);
//固定替换数据区
// option.series[0].data = dataWD;
// option.series[1].data = dataSD;
myChart.setOption(option);//更新
}, 5000);
</script>
<center><h3>久爱物联网 Echarts 动态温湿度示意图</h3></center>
<div id="wd_echarts" class="wdline"></div>
<div style="color: #dddddd;">
<li>
久爱物联网 Echarts 动态示意图,可以随温度变背景色的曲线图
</li>
<li>
时间轴做了处理支持24小时制(一般随系统格式显示的)更新频率5秒钟
</li>
</div>
</body>
</html>
我的实际案例效果
专注您的需求,DIY属于您的产品!
三种供电方式(AC220 DC12V USB5V)
TYPE-C功能集一体(充电 调试 下载)
点动模式(默认),自动模式(温控策略-支持3组,时控策略-支持3组)
多功能干接点(可以实现任意设置控制并掉电保存)实现一对任一路(1/2/3/4)或一对多(0~4)
支持串口控制(USB一键调试)--后期可能提供配置工具
支持远程控制(WIFI一键配网,断电记忆,断网重连)
终端可以适配任何平台(默认集成到公众号中)
支持485控制(扩展传感器等)
AC断电监测(后续扩展各种报警机制)
支持温湿度DHT11/DHT22等
可用GPIO引出学习调试
AC+DC:可以实现断电无缝切换电源 不断开,且支持掉电记忆。(默认掉电后2分钟内记忆状态 上电恢复继电器状态)
四路16A大继电器输出(20A端子输出)理论支持3500瓦(阻性电阻)
温控策略:默认支持3组(自动模式下生效)
时控策略:默认支持3组(自动模式下生效)
点动模式:各种组合(单路,闪开,闪断,互斥等)
测试通过的传感器:温湿度,触摸,声控,温控,红外等
批量可定制部分功能!欢迎交流!