echarts更新数据不重新绘制图表

在使用echarts进行可视化图表的开发时,由于option配置项配置项太多,在进行一些动态操作时我们一般情况下都是去直接更新series里面的数据来更新页面图表的数据。这就产生了一个问题,当series里面的数据条数不相等时,再重新对获取echart实例进行setOption,当更新的数据少于之前数据时,会发现页面回遗留下之前的数据,包括图例。解决办法:给setOption这个方法加上第二个参数true,重新绘制整个图表(默认是false)配置项手册

myChart.setOption(option,true)

下面来举个例子

#myChart{
    width: 600px;
    height: 450px;
    margin: auto;
}
.btn{
    text-align: center;
}
<div id="myChart"></div>
 <div class="btn">
        <button class="origin">原始数据</button>
        <button class="one">一条数据</button>
 </div>
<script>
        const myChart =  echarts.init(document.getElementById("myChart"))
        let option = {
            tooltip:{
                show:true,
                trigger:"item"
            },
            legend:{
                show:true,
            },
            xAxis: {
                type: 'category',
                data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
            },
            yAxis: {
                type: 'value',
                boundaryGap: [0, '30%']
            },
            series:[
                {
                    name:"折线图",
                    data: [820, 932, 901, 934, 1290, 1330, 1320],
                    type: 'line',
                },
                {
                    name:"柱状图",
                    data: [820, 932, 901, 934, 1290, 1330, 1320],
                    type: 'bar',
                    itemStyle:{//随机颜色
                        color:"rgba("+ Math.floor(Math.random()*256) + ',' +  Math.floor(Math.random()*256) + ',' +Math.floor(Math.random()*256) + ',' +  (Math.random()*10).toFixed(1) +')'
                    }
                }
            ]
        }
        myChart.setOption(option)
         $('.origin').click(function(){
            option.series = [
                {
                    name:"折线图",
                    data: [820, 932, 901, 934, 1290, 1330, 1320],
                    type: 'line',
                },
                {
                    name:"柱状图",
                    data: [820, 932, 901, 934, 1290, 1330, 1320],
                    type: 'bar',
                    itemStyle:{//随机颜色
                        color:"rgba("+ Math.floor(Math.random()*256) + ',' +  Math.floor(Math.random()*256) + ',' +Math.floor(Math.random()*256) + ',' +  (Math.random()*10).toFixed(1) +')'
                    }
                }
            ]
            myChart.setOption(option)
        })
        $(".one").click(function(){
            var data = {
                    name:"折线图",
                    data: [720, 832, 501, 934, 590, 730, 800],
                    type: 'line',
                }
                option.series = [data]
                myChart.setOption(option)
        })

在页面的效果如下
在这里插入图片描述
可以看到这个当只有一条数据时最初始的第二条数据以及图例还在图表里,在setOption加上第二个参数为true时

$(".one").click(function(){
            var data = {
                    name:"折线图",
                    data: [720, 832, 501, 934, 590, 730, 800],
                    type: 'line',
                }
                option.series = [data]
                myChart.setOption(option,true)
        })

页面效果如下
在这里插入图片描述
在这看到图表已经能够重新绘制了

### 回答1: ASP.NET是一个基于Web的应用程序开发平台,支持多种编程语言和开发工具。随着Web应用程序的发展,数据可视化变得越来越重要,ECharts是一个非常流行的数据可视化库。 使用ECharts绘制图表需要几个步骤。首先,在ASP.NET项目中添加ECharts库,并在需要绘制图表的页面中引入相关的JavaScript文件和CSS。 然后,我们需要编写JavaScript代码来配置图表。这包括定义图表的类型、数据来源、样式和其他样式选项。可以在ECharts官网上找到各种类型的图表示例和文档,作为参考和指导。 最后,将图表渲染到HTML页面中。可以使用ECharts提供的API来将图表插入到指定的HTML元素中。 除了基本的图表绘制功能,ECharts还提供了一些高级的特性,如数据驱动的图形变化、交互式数据探索、闪烁式动画效果等。这些特性可以进一步增强数据可视化的效果,为用户提供更好的数据分析和理解能力。 在ASP.NET应用程序中使用ECharts绘制图表可以使数据更好地呈现出来,为用户提供更好的数据可视化效果。这对于数据分析、报表和决策支持等方面都非常有帮助。 ### 回答2: ASP.NET是一个强大的Web应用程序框架,可以让开发者使用各种技术(如HTML、CSS、JavaScript等)来构建高效的Web应用程序。而ECharts则是一款极其强大的JavaScript图表库,可以在Web应用程序中呈现各种类型的图表,如折线图、柱状图、饼图、雷达图等等。 在ASP.NET中使用ECharts绘制图表非常简单,只需要引入ECharts的JavaScript文件,并编写一些JavaScript代码即可实现想要的图表效果。ASP.NET中的ECharts使用采用前端渲染的方式,将图表数据和样式信息通过JSON格式传递给浏览器,由浏览器进行渲染,从而实现对数据的可视化。开发者可以通过ECharts提供的丰富的API来自定义图表样式,如更改颜色、字体、标签等。 在ASP.NET中使用ECharts的主要优点是能够快速实现数据可视化,使得开发者可以更直观地了解数据的特点,从而更快速地做出决策。同时,ECharts还支持对移动设备的适配,可以在不同设备上实现合适的图表展示效果。 总之,ASP.NET结合ECharts可以让开发者更便捷地实现数据可视化,展示出更直观的数据结果,帮助用户更好地了解和处理数据。 ### 回答3: asp.net echarts是一种非常强大的数据可视化组件,可以在asp.net网页中轻松地绘制各种图表,包括折线图、柱状图、饼状图、散点图等。由于asp.net echarts使用简单方便,所以很受开发者的喜爱。 想要在asp.net网页中使用echarts绘制图表,需要先准备好echarts库和所需的数据。可以通过引入echarts.js文件和样式表,然后在网页中设置一个容器,用于显示echarts图表。接下来,可以通过JavaScript或jQuery编写代码,在容器中绘制不同类型的图表,并对其进行样式和交互的设置。 使用asp.net echarts绘制图表时,需要注意一些细节问题。例如在加载echarts库时需要注意版本兼容性,需要对数据进行合理的处理和格式化,还需要设置一些参数和方法,以达到更好的可视化效果。 总之,使用asp.net echarts可以快速轻松地实现数据可视化的需求,使数据更加直观、易于理解,有助于提高网页的用户体验,也有助于更好地展示数据分析的结果。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值