当前位置: 首页 > news >正文

echarts:简单实现默认显示两柱子折线,点击按钮后显示新的柱子

问:

用echarts实现:默认显示两柱子折线,点击“税率”按钮,显示税率柱子,之前的两柱子折线消失

回答:

<!DOCTYPE html>
<html lang="zh">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>ECharts 示例</title><script src="https://cdn.jsdelivr.net/npm/echarts/dist/echarts.min.js"></script><style>#main {width: 600px;height: 400px;}</style>
</head>
<body><div id="main"></div>
<button id="toggleButton">切换图表</button><script>
// 初始数据
const data = {xAxisData: ['类别1', '类别2'],seriesData1: [120, 200], // 柱子1数据seriesData2: [150, 250], // 柱子2数据lineData: [80, 180],      // 折线数据newBarData: [300],        // 新增的柱子数据sl_x: ['新类别'],         // 新增的横轴数据sl_y: [400]               // 新增的纵轴数据
};let isNewBarVisible = false; // 标记是否显示新增的柱子// 初始化图表
const myChart = echarts.init(document.getElementById('main'));
createChart();function createChart() {const option = {title: {text: 'ECharts 示例'},tooltip: {},legend: {data: isNewBarVisible ? ['新增柱子'] : ['柱子1', '柱子2', '折线'] // 根据状态决定显示的图例},xAxis: {data: isNewBarVisible ? data.sl_x : data.xAxisData // 根据状态决定x轴数据},yAxis: {},series: [{name: '柱子1',type: 'bar',data: isNewBarVisible ? [] : data.seriesData1 // 如果只显示新增柱子,则原柱子数据为空},{name: '柱子2',type: 'bar',data: isNewBarVisible ? [] : data.seriesData2 // 如果只显示新增柱子,则原柱子数据为空},{name: '折线',type: 'line',data: isNewBarVisible ? [] : data.lineData, // 如果只显示新增柱子,则折线数据为空smooth: true // 设置折线平滑},{name: '新增柱子',type: 'bar',data: isNewBarVisible ? data.sl_y : [] // 显示或者隐藏新增柱子}]};myChart.setOption(option);
}// 切换图表状态
document.getElementById('toggleButton').onclick = function() {isNewBarVisible = !isNewBarVisible; // 切换状态createChart(); // 重新创建图表
};
</script></body>
</html>

http://www.lryc.cn/news/487860.html

相关文章:

  • 视频里的音频怎么提取出来成单独文件?音频提取照着这些方法做
  • Excel——宏教程(精简版)
  • C++中的std::tuple和std::pair
  • 引力搜索算法
  • 【时间之外】IT人求职和创业应知【35】-RTE三进宫
  • Linux的目录结构
  • python: generator IDAL and DAL using sql server 2019
  • 命令执行简单
  • 【一句话经验】亚马逊云EC2 ubuntu24.04.1开启ROOT登录Permission denied (publickey)
  • 百度智能云千帆大模型平台引领企业创新增长
  • 【Linux】深入理解GCC/G++编译流程及库文件管理
  • 【Unity基础】对比Unity中两种粒子系统
  • 琐碎笔记——pytest实现前置、后置、参数化、跳过用例执行以及重试
  • C# 深层副本与浅层副本 深拷贝与浅拷贝
  • CH06_Lambda表达式
  • 大模型本地部署实践:Ollama+Open-WebUI(MacOS)
  • JavaScript——DOM编程、JS的对象和JSON
  • SIMCom芯讯通A7680C在线升级:FTP升级成功;http升级腾讯云对象储存的文件失败;http升级私有服务器的文件成功
  • OSRM docker环境启动
  • Vue3 动态获取 assets 文件夹图片
  • <项目代码>YOLOv8 草莓成熟识别<目标检测>
  • 代码随想录算法训练营第五十一天|Day51 图论
  • uniapp 自定义加载组件,全屏加载,局部加载 (微信小程序)
  • STM32完全学习——系统时钟设置
  • Github 2024-11-16Rust开源项目日报 Top10
  • CH03_反射
  • vue2侧边导航栏路由
  • core 不可变类型 线程安全 record
  • linux之调度管理(8)-SMP cpu 的 psci启动
  • review-消息中间件MQ