首页 > 其他分享 >Echarts-x轴数据换行显示

Echarts-x轴数据换行显示

时间:2024-07-10 17:11:35浏览次数:12  
标签:00 12 provideNumber 换行 params var 数据 Echarts

<!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>Echarts异步数据加载</title>
    <!-- 引入echarts -->
    <script src="./echarts.min.js"></script>
</head>
<body>
   <!-- 为ECharts准备一个具备大小(宽高)的Dom -->
    <div id="main" style="width: 600px;height:400px;"></div>
    <script type="text/javascript">


        // 基于准备好的dom,初始化echarts实例
        var myChart = echarts.init(document.getElementById('main'));

        // 指定图表的配置项和数据
        var option = {
            title: {
                text: 'ECharts 入门示例'
            },
            tooltip: {},
            legend: {
                data:['销量']
            },
            xAxis: {
                axisLabel: {//坐标轴刻度标签的相关设置。
                     formatter : function(params){
                       var newParamsName = "";// 最终拼接成的字符串
                                var paramsNameNumber = params.length;// 实际标签的个数
                                var provideNumber = 5;// 每行能显示的字的个数
                                var rowNumber = Math.ceil(paramsNameNumber / provideNumber);// 换行的话,需要显示几行,向上取整
                                /**
                                 * 判断标签的个数是否大于规定的个数, 如果大于,则进行换行处理 如果不大于,即等于或小于,就返回原标签
                                 */
                                // 条件等同于rowNumber>1
                                if (paramsNameNumber > provideNumber) {
                                    /** 循环每一行,p表示行 */
                                    for (var p = 0; p < rowNumber; p++) {
                                        var tempStr = "";// 表示每一次截取的字符串
                                        var start = p * provideNumber;// 开始截取的位置
                                        var end = start + provideNumber;// 结束截取的位置
                                        // 此处特殊处理最后一行的索引值
                                        if (p == rowNumber - 1) {
                                            // 最后一次不换行
                                            tempStr = params.substring(start, paramsNameNumber);
                                        } else {
                                            // 每一次拼接字符串并换行
                                            tempStr = params.substring(start, end) + "\n";
                                        }
                                        newParamsName += tempStr;// 最终拼成的字符串
                                    }

                                } else {
                                    // 将旧标签的值赋给新标签
                                    newParamsName = params;
                                }
                                //将最终的字符串返回
                                return newParamsName
                    }

                },
                data: ["12-1808:00","12-1811:00","12-1814:00","12-1817:00","12-1820:00","12-1823:00"]
            },
            yAxis: {},
            series: [{
                name: '销量',
                type: 'bar',
                data: [5, 20, 36, 10, 10, 20]
            }]
        };


        // 使用刚指定的配置项和数据显示图表。
        myChart.setOption(option);
    </script>
</body>
</html>

 

标签:00,12,provideNumber,换行,params,var,数据,Echarts
From: https://www.cnblogs.com/smile-fanyin/p/18294508

相关文章

  • laravel: 安装完后配置session使用文件而非使用数据库
    一,报错信息:laravel在安装完成后初次运行时会报错,InternalServerErrorIlluminate\Database\QueryExceptionSQLSTATE[HY000]:Generalerror:8attempttowriteareadonlydatabase(Connection:sqlite,SQL:update"sessions"set"payload"=YTozOntzOjY......
  • echarts 如何设置 legend 展示为虚线或者实线
    文章目录一、操作步骤1.找虚线或者实线的svg2.echarts中legend部分的完整代码3.预览效果总结一、操作步骤1.找虚线或者实线的svg在阿里巴巴矢量图标库里面找相应的内容。截图:复制里面的svg代码如下(实线举例):<svgt="1720600860976"class="icon"viewBox="00......
  • insert into....select从一个数据库的表中导入到另一个数据库的表中
    说明已知条件:有两台oracle数据库,ora1和ora2,ora1的表中有数据(ip:192.0.0.1,表名table1,用户名和密码:yth(有管理员的权限),数据库服务名:orcl),需要导入ora2中(ip:192.0.0.2,表名table2,用户名和密码:ythcj(有管理员的权限),数据库服务名:orcl)。1.在ora2中建立数据库的链接指向ora1(需要有管理员......
  • Linux环境下安装DM8数据库
    文章目录一、安装包下载二、新建组和用户三、设置文件打开最大数四、创建目录及修改目录权限五、挂载镜像及数据库安装六、配置数据库实例七、注册服务八、运行数据库(启动,停止,重启,查看数据库状态和端口号等)总结一、安装包下载官方下载网址:https://eco.dameng.com......
  • Python教程:Pandas数据转换编码的10种方式
    1.构建测试数据集importpandasaspdimportnumpyasnpdf=pd.DataFrame({'Sex':['M','F','M','M','M','F','M','F','F','F'],'Cou......
  • 数据结构--第八章排序
    注:内容参考王道2024考研复习指导以及《数据结构》一、排序的基本概念排序(sort),就是重新排列表中的元素,使表中的元素满足按关键字有序的过程。排序算法的评价指标时间复杂度空间复杂度稳定性算法的稳定性,若待排序表中有两个元素Ri​和Rj​,其对应的关键字相同即keyi​=keyj......
  • 利用 ECharts 地图:实现纹理和图像的效果(上海json)
    注:shanghaiGeoJSON换为你需要的区域json<template><divref="mapContainer"style="width:100%;height:500px"></div></template>import*asechartsfrom'echarts';importshanghaiGeoJSONfrom'@/assets......
  • opc ua设备数据 转MQTT项目案例
    目录1 案例说明 12 VFBOX网关工作原理 13 准备工作 24 配置VFBOX网关采集OPCUA的数据 25 用MQTT协议转发数据 46 配置参数说明 47 上报内容配置 58 其他说明 89 案例总结 81 案例说明设置网关采集OPCUA设备数据把采集的数据转成MQTT协议转发给其他系统。2 VFBOX......
  • 太原理工数据结构实验报告(计科)
    实验一线性表一、实验目的和要求本次实验的主要目的是为了使学生熟练掌握线性表的基本操作在顺序存储结构和链式存储结构上的实现,提高分析和解决问题的能力。要求仔细阅读并理解下列例题,上机通过,并观察其结果,然后独立完成后面的实验题。(1学时)二、实验内容和原理1.建立如......
  • CDGA|数据治理:如何建立健全数据伦理和隐私保护机制?
    随着数字化时代的到来,数据已成为推动社会进步和企业发展的重要资源。然而,随之而来的数据伦理和隐私保护问题也日益凸显。建立健全的数据治理体系,特别是强化数据伦理和隐私保护机制,已成为当务之急。数据治理的重要性数据治理是指对数据资产进行管理和控制的一系列活动和过程......