echarts做曲线图 超过范围颜色不一样的设定


test3:function () {
    let myChart = echarts.init(document.getElementById('echart3'));
    let date = new Date();
    testEcharts({createDate:date}).then(function (rsp) {
        console.log(rsp)
        let y = rsp.data;

        myChart.setOption({
            title: {
                text: '一天用电量分布',
                padding: 3,
                textStyle: {
                    fontSize: 18,
                    fontWeight: 'bolder',
                    color: '#ff0000'          // 主标题文字颜色
                },
                subtextStyle: {
                    color: '#aaa'          // 副标题文字颜色
                }
            },
            tooltip: {//悬浮提示框
                showDelay: 20,
                trigger: 'axis',
                axisPointer: {
                    type: 'cross'
                }
            },
            toolbox: {//下载
                show: true,
                feature: {
                    saveAsImage: {}
                }
            },
            xAxis:  {//X                name:'时间轴',
                type: 'category',
                boundaryGap: false,
                data: ['00:00', '01:15', '02:30', '03:45']
            },
            yAxis: {//Y                name:'用电量',
                type: 'value',
                axisLabel: {
                    formatter: '{value} W'
                },
                axisPointer: {
                    snap: true
                }
            },
            visualMap: {//区间内控制显示颜色
                show: false,
                dimension: 1,
                pieces: [{gte: 7, lte: 15, color: 'green'}],
                outOfRange: {
                    color: 'red'
                }
            },
            series: [
                {
                    name:'用电量',
                    type:'line',
                    smooth: true,
                    data: y,
                    markPoint : {
                        data : [
                            {type : 'max', name: '最大值'},
                            {type : 'min', name: '最小值'}
                        ]
                    }
                },
                {
                    name:'下限',
                    type:'line',
                    data:[7],
                    markLine : {
                        data : [
                            {type : 'average', name : '平均值'}
                        ]
                    }
                },
                {
                    name:'上限',
                    type:'line',
                    data:[15],
                    markLine : {
                        data : [
                            {type : 'average', name : '平均值'}
                        ]
                    }
                }
            ],
        });
    });
}

参考

https://blog.youkuaiyun.com/a_leading/article/details/77891530

要在Vue项目中实现同量程的曲线同屏展示,通常会涉及到数据可视化库的选择、组件的设计以及如何处理同量程的数据等问题。 ### 使用ECharts实现 **步骤一:安装依赖** 首先你需要引入一个合适的图表库,在这里我们选择ECharts作为示例: ```bash npm install echarts --save ``` 然后在你的.vue文件里注册这个包, ```javascript import * as echarts from 'echarts'; ``` **步骤二:创建基础模板结构** 接着设置好DOM容器并初始化chart实例, ```html <div id="main" style="width: 600px;height:400px;"></div> <script type="text/javascript"> var myChart = echarts.init(document.getElementById('main')); </script> ``` 这里的`#main`就是你要渲染图形的地方了。 **步骤三:配置项设计 - 关键部分在于Y轴设定** 为了能够同时显示范围值域的数据系列(比如温度 vs 湿度),我们可以利用双坐标轴特性来解决这个问题。具体法是在option里面添加两个yAxis,并且让其中一个series关联到第二个axisIndex上即可。 例如: ```javascript let option = { xAxis: {type : 'category', data : ['Mon', 'Tue', ...]}, yAxis: [ {name:'Value1'}, // 第一条Y轴,用于表示第一个单位的刻度 {name:'Value2', position:'right'}//第二条位于右侧的Y轴,适用于另一个独立的数量级 ], series:[ { name:"Series A", type:'line', data:[820,932,...], // 数据源A }, { name:"Series B", type:'line', yAxisIndex : 1, data:[5,7,...]// 另一组完全一样的数值大小B } ] }; myChart.setOption(option); ``` 通过上述的方式就可以轻松实现在一张图内比较两组甚至更多有着完全同取值空间时间序列的能力啦! 此外还可以自定义样式、交互等功能进一步完善此功能模块。如果你希望获得更详细的文档支持可以前往[ECharts官网](https://echarts.apache.org/zh/index.html)查阅官方API说明和其他案例教程哦~
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值