<!DOCTYPE html>
<html lang="en"> <head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<style>
input[type=range] {
-webkit-appearance: none;
width: 100%;
/*这个属性设置使填充进度条时的图形为圆角*/
} input[type=range]::-webkit-slider-thumb {
-webkit-appearance: none;
} input[type=range]::-webkit-slider-runnable-track {
height: 0px;
/*轨道内置阴影效果*/
} input[type=range]:focus {
outline: none;
} input[type=range]::-webkit-slider-thumb {
-webkit-appearance: none;
height: 6px;
width: 40px;
margin-top: -3px;
/*使滑块超出轨道部分的偏移量相等*/
background: #3a4764;
border: solid 0.125em #3a4764;
/*设置边框*/
}
</style>
</head> <body>
<div style="width: 500px;height: 500px;background-color: #1c1f2b; position: absolute;">
<div id="main" style="height: 100%;"></div> <div id="move-panel" style="position: relative;z-index: 2;bottom: 60px;left: 50px; width: 400px; height: 0;">
<!-- <div id="move" style="background-color: #3a4764;height: 10px;width: 30px;margin-top:-5px;cursor: pointer;">
</div> -->
<input type="range" value="0" style="display: block;margin: 0;">
</div>
</div>
<input type="button" value="切换" id="btn_click" />
</body> </html>
<script src="echarts.min.js"></script>
<script src="https://code.jquery.com/jquery-2.2.4.min.js"
integrity="sha256-BbhdlvQf/xTY9gja0Dq3HiwQF8LaCRTXxZKRutelT44=" crossorigin="anonymous"></script>
<script> var myChart;
var option; function loadLine() {
option = {
xAxis: {
type: 'category',
data: ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21', '22', '23'],
axisLabel: {
color: 'red'
},// x轴文字颜色
axisLine: {
lineStyle: {
color: '#2d303b'
}
},// 坐标轴颜色
axisPointer: {
show: true
},
boundaryGap: false,
},
yAxis: {
type: 'value',
axisLine: {
lineStyle: {
color: '#2d303b'
}
},// 坐标轴颜色
splitLine: {
lineStyle: {
color: ['#c555cc']
}
},// 分割线颜色
axisLabel: {
color: 'red'
},// 坐标轴的文字颜色
},
series: [{
data: [820, 932, 901, 934, 1290, 1330, 1320, 820, 932, 901, 934, 1290, 1330, 1320, 820, 932, 901, 934, 1290, 1330, 1320, 820, 932, 901, 934],
type: 'line',
smooth: true,
symbol: 'circle',
symbolSize: 4,
label: {
show: true,
color: '#28edff'
},
lineStyle: {
color: '#28edff',
width: 1,
},
itemStyle: {
color: "#28edff"
}
}],
dataZoom: [
{
type: 'inside',//slider表示有滑动块的,inside表示内置的
show: true,
xAxisIndex: [0],
start: 0,
end: 50,
backgroundColor: 'rgba(0,0,0,0.5)',// 滑块背景颜色
fillerColor: 'rgba(255,255,0,0.5)',// 填充颜色
showDetail: false,// 拖拽时,是否显示详细信息
}
],
};
myChart = echarts.init(document.getElementById('main'));
myChart.setOption(option) } $(function () {
loadLine(); $("#btn_click").click(function () {
option.dataZoom[0].start = option.dataZoom[0].start + 10;
option.dataZoom[0].end = option.dataZoom[0].end + 10;
myChart.setOption(option)
}) $('input').RangeSlider({
min: 0, max: 12, step: 1, callback: function ($value) {
var p = 100 / 24 * $value if (p != option.dataZoom[0].start) {
option.dataZoom[0].start = p;
option.dataZoom[0].end = p + 50;
myChart.setOption(option)
}
}
}); myChart.on('datazoom',function(result){
var h = Math.round(result.batch[0].start * 23 / 100)
var val = $('input').val(); if(h != val){
$('input').val(h);
} })
}) $.fn.RangeSlider = function (cfg) {
this.sliderCfg = {
min: cfg && !isNaN(parseFloat(cfg.min)) ? Number(cfg.min) : null,
max: cfg && !isNaN(parseFloat(cfg.max)) ? Number(cfg.max) : null,
step: cfg && Number(cfg.step) ? cfg.step : 1,
callback: cfg && cfg.callback ? cfg.callback : null
}; var $input = $(this);
var min = this.sliderCfg.min;
var max = this.sliderCfg.max;
var step = this.sliderCfg.step;
var callback = this.sliderCfg.callback; $input.attr('min', min)
.attr('max', max)
.attr('step', step); $input.bind("input", function (e) {
$input.attr('value', this.value); if ($.isFunction(callback)) {
callback(this.value);
}
});
};
</script>

echarts--可拖动的曲线图的更多相关文章

  1. echarts 用marlkline画线 同时配置中含有datazoom,怎么设置markline

    由于项目需要设置边界值即用markline 画标线,通过echarts文档可以查看到(如下) 1.通过坐标点(xAxis和yAxis的设置) 通过网上搜索许多markline的配置都是通过下面来设置的 ...

  2. 获取Echarts的DataZoom的起始值

    创建DataZoom拖动事件 myChart.on(ecConfig.EVENT.DATA_ZOOM, eConsole);   //事件名, 相关联的方法名 var ecConfig = requi ...

  3. 【Model Log】模型评估指标可视化,自动画Loss、Accuracy曲线图工具,无需人工参与!

    1. Model Log 介绍 Model Log 是一款基于 Python3 的轻量级机器学习(Machine Learning).深度学习(Deep Learning)模型训练评估指标可视化工具, ...

  4. easyUI draggable插件使用不当,导致拖动div内部文本框无法输入;设置echarts数据为空时就显示空白,不要动画和文字

    先上一个Demo <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://ww ...

  5. 在vue中使用Echarts画曲线图(异步加载数据)

    现实的工作中, 数据不可能写死的,所有的数据都应该通过发送请求进行获取. 所以本项目的需求是请求服务器获得二维数组,并生成曲线图.曲线图的横纵坐标均从获得的数据中取得. Echarts官方文档: ht ...

  6. vue+echarts实现可拖动节点的折现图(支持拖动方向和上下限的设置)

    本篇文档主要是利用echarts实现可拖动节点的折现图,在echarts中找到了一个demo,传送门:https://echarts.baidu.com/examples/editor.html?c= ...

  7. (原创)用Microsoft Chart Controls(MSChart)实现曲线图,并支持拖动放大到秒

    Microsoft Chart Controls(简称MSChart)控件,给图形统计和报表图形显示提供了很好的解决办法,同时支持Web和WinForm两种方式. MSChart 在.NET 4.0自 ...

  8. echarts实现多条可拖动节点的折现图

    这篇博文主要是利用echarts实现两条以及多条可拖动节点的曲线,demo脱胎于官方demo,在官方demo的基础上添加了另一条曲线.因为之前写过一篇在vue中使用echarts实现可拖动节点的折线图 ...

  9. 用Microsoft Chart Controls(MSChart)实现曲线图,并支持拖动放大到秒

    Microsoft Chart Controls(简称MSChart)控件,给图形统计和报表图形显示提供了很好的解决办法,同时支持Web和WinForm两种方式. MSChart 在.NET 4.0自 ...

随机推荐

  1. 架构模式中的Active Record和Data Mapper

    架构模式中的Active Record和Data Mapper 概念 在简单应用中,领域模型是一种和数据库结构一致的简单结构,对应每个数据库表都有一个领域类,在这种情况下,有必要让每个对象负责数据库的 ...

  2. Java错误:找不到类文件或者未加载主类

    使用java命令执行.class文件时,java只会查找环境变量CLASSPATH中的目录,并会不查找当前目录,所以只要把当前目录”."加入到CLASSPATH中就可以了.

  3. 基于spring cloud OAuth2的微服务授权验证服务搭建的一些坑, 包括401,client_secret,invalid_scope等问题

    一 先贴成功图,用的是springcloud Finchley.SR1版本,springboot版本2.0.6 问题一: 返回401, Unauthorized 出现这个问题原因很多:首先确保方法开启 ...

  4. Paper慢慢读 - AB实验人群定向 Double Machine Learning

    Hetergeneous Treatment Effect旨在量化实验对不同人群的差异影响,进而通过人群定向/数值策略的方式进行差异化实验,或者对实验进行调整.Double Machine Learn ...

  5. 面试官:能解释一下javascript中bind、apply和call这三个函数的用法吗

    一.前言    不知道大家还记不记得前几篇的文章:<面试官:能解释一下javascript中的this吗> 那今天这篇文章虽然是介绍javascript中bind.apply和call函数 ...

  6. 实验11:EIGRP

    实验8-1:EIGRP 基本配置 实验目的通过本实验可以掌握:(1)在路由器上启动EIGRP 路由进程(2)启用参与路由协议的接口,并且通告网络(3)EIGRP 度量值的计算方法(4)可行距离(FD) ...

  7. nginx命令行及演示:重载、热部署、日志切割

    重载配置文件 nginx -s reload 热部署(升级nginx) 首先备份二进制文件 cp nginx nginx.old  拷贝新版本的nginx替换以前的nginx二进制文件 cp  ngi ...

  8. jsp操作mysql样例

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...

  9. 必须收藏的MySQL高性能优化实战总结!

    MySQL对于很多程序员来说,是一个非常棘手的问题,多数情况都是因为对数据库出现问题的情况和处理思路不清晰.在进行MySQL的优化之前必须要了解的就是MySQL的查询过程,很多的查询优化工作实际上就是 ...

  10. angular 控件间的通信

    先引入 设置meta元素 http://blog.sina.com.cn/s/blog_51048da70101cgea.html //设置 虚拟窗口的大小等于设备的大小 <meta name= ...