JS图表生成以及点击修改图表样式

简介: JS图表生成以及点击修改图表样式

在这个示例中,我们将使用Chart.js库来生成一个简单的柱状图,并且添加按钮来点击时修改图表的样式。

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8" />
    <title>图表练习</title>
    <script src="./js/jquery-3.7.1.min.js"></script>
    <script src="./js/echarts.min.js"></script>
  </head>
  <body>
    <!-- 为 ECharts 准备一个定义了宽高的 DOM -->
    <div id="main" style="width: 600px;height:400px;"></div>
    <button id="Bar">柱状图</button>
    <button id="Line">折线图</button>
    <div id="mains" style="width: 600px;height:400px;"></div>
    <div id="" style="width: 600px;height:400px;"></div>
    <script type="text/javascript">
      // 基于准备好的dom,初始化echarts实例
      var myChart = echarts.init(document.getElementById('main'));
      let arr = [{
          id: 1,
          name: '衬衫',
          price: '119',
          num: 109,
          income: 152
        },
        {
          id: 2,
          name: '西装',
          price: '159',
          num: 59,
          income: 256
        },
        {
          id: 3,
          name: '领带',
          price: '99',
          num: 200,
          income: 147
        },
        {
          id: 4,
          name: '那不雷斯',
          price: '169',
          num: 123,
          income: 258
        },
        {
          id: 5,
          name: '皮鞋',
          price: '259',
          num: 144,
          income: 369
        }
      ];
      let goods = [];
      let quantity = [];
      let surplus = [];
      let price = [];
      for (let i in arr) {
        goods[i] = arr[i].name;
        quantity[i] = arr[i].num;
        surplus[i] = arr[i].income;
        price[i] = arr[i].price;
      }
      // 指定图表的配置项和数据
      let option = {
        title: {
          text: '西装'
        },
        tooltip: {},
        legend: {
          data: ['销量', '剩余', '价格']
        },
        xAxis: {
          data: goods
        },
        yAxis: {},
        series: [{
            name: '销量',
            type: 'bar',
            data: quantity,
          },
          {
            name: '剩余',
            type: 'bar',
            data: surplus
          },
          {
            name: '价格',
            type: 'bar',
            data: price
          }
        ]
      };
 
      // 使用刚指定的配置项和数据显示图表。
      myChart.setOption(option);
      let Bar = document.getElementById('Bar');
      let Line = document.getElementById('Line');
      Line.onclick = function() {
        for(let i = 0 ; i < option.series.length ; i++){
          option.series[i].type = 'line';
            myChart.setOption(option);
        }
        
      }
      Bar.onclick = function() {
        for(let i = 0 ; i < option.series.length ; i++){
        option.series[i].type = 'bar';
        myChart.setOption(option);
        }
        
      }
    </script>
  </body>
</html>


我们可以通过点击按钮,切换柱状图和折线图

相关文章
|
15天前
|
数据采集 存储 监控
实现自动化数据抓取:使用Node.js操控鼠标点击与位置坐标
本文介绍了如何使用Node.js和Puppeteer实现自动化数据抓取,特别是针对新闻网站“澎湃新闻”。通过设置代理IP、User-Agent和Cookie,提高爬虫的效率和隐蔽性,避免被网站封锁。代码示例展示了如何模拟鼠标点击、键盘输入等操作,抓取并整理新闻数据,适用于需要规避IP限制和突破频率限制的场景。
60 10
|
1月前
|
移动开发 前端开发 JavaScript
JavaScript 中的样式切换方法
JavaScript 中的样式切换方法
14 0
|
2月前
|
JavaScript 前端开发
JS判断点击是单击还是双击
如何使用JavaScript判断用户点击是单击还是双击。
40 0
|
3月前
|
JavaScript 前端开发 Java
JavaScript内存泄露大揭秘!你的应用为何频频“爆内存”?点击解锁救星秘籍!
【8月更文挑战第23天】在Web前端开发中,JavaScript是构建动态网页的关键技术。然而,随着应用复杂度增加,内存管理变得至关重要。本文探讨了JavaScript中常见的内存泄露原因,包括意外的全局变量、不当使用的闭包、未清除的定时器、未清理的DOM元素引用及第三方库引发的内存泄露。通过了解这些问题并采取相应措施,开发者可以有效避免内存泄露,提高应用性能。
55 1
|
3月前
|
JavaScript Java
点击按钮,向下添加目录。Java script+jQuery写法
点击按钮,向下添加目录。Java script+jQuery写法
22 1
|
3月前
|
JavaScript Java
分别使用js与jquery写 单击按钮时出现内容 点击删除按钮不会再向下出现
分别使用js与jquery写 单击按钮时出现内容 点击删除按钮不会再向下出现
20 1
|
3月前
|
JavaScript Apache
js之图表使用
js之图表使用
28 1
|
3月前
|
JavaScript 前端开发
Next js:点击登录显示登录表单,点击注册显示注册表单的功能
本文提供了一个Next.js中使用React状态管理实现点击按钮切换显示登录和注册表单的功能示例,包括创建`authform.tsx`组件和在页面组件中引入使用的方法。
|
3月前
|
JavaScript
js图表制作
js图表制作
20 0
|
3月前
|
移动开发 前端开发 JavaScript
JavaScript 中的样式切换方法
JavaScript 中的样式切换方法
25 0