echarts图表标题,层级,view表格,机型适配

2024-09-05 00:12

本文主要是介绍echarts图表标题,层级,view表格,机型适配,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.主标题和副标题在同一行上

在副标题当中设置itemGap:0

 title: [{text: '',left: 'left',textStyle: {fontSize: adjustSize(0.7),fontWeight: 400,color:'#333',}},{subtext: '',left: 'right',itemGap: 0, subtextStyle: { //设置字体样fontSize: adjustSize(0.7),fontFamily: 'sans-serif',color:'#333',} }],

下面是更全的title相关属性

title:{//1.标题居中//left的值为'left', 'center', 'right'left:'center',//默认为10//2.主副标题之间的间距itemGap:20,3.标题文本样式   text:'标题文本',textStyle:{//文字颜色color:'#ccc',//字体风格,'normal','italic','oblique'fontStyle:'normal',//字体粗细 'normal','bold','bolder','lighter',100 | 200 | 300 | 400...fontWeight:'bold',//字体系列fontFamily:'sans-serif',//字体大小fontSize:18}//4.副标题subtext:'副标题',//副标题文本样式subtextStyle:{},//5.grid组件离容器左侧的距离。// left 的值可以是像 20 这样的具体像素值,可以是像 '20%' 这样相对于容器高宽的百分比,也            可以是 'left', 'center', 'right'。//如果 left 的值为'left', 'center', 'right',组件会根据相应的位置自动对齐。left:'center'  
}

2.echarts图表和二维表 

最近遇到了一个问题,需求是echarts图表和二维表在同一个界面

因为echarts图表的层级是很高的,导致二维表和echarts图表不在一个界面,网上看到了hidden隐藏的方法(这种情况适用于echars图表层级太高,导致微信原生小程序的选择框被覆盖等情况),

2.1隐藏

隐藏方法用到的是父子组件,子组件给父组件传值需要用到方法,父组件给子组件传值使用properties。

首先在子组件当中的methods方法当中,一些方法里面。调用 this.triggerEvent("sendMonthVisible", { monthVisible:true});

// 打开年月选择器showTimePicker(e) {const { mode } = e.currentTarget.dataset;this.setData({mode,[`${mode}Visible`]: true,});this.triggerEvent("sendMonthVisible", { monthVisible:true});},

然后再父组件当中的wxml,绑定,sendMonthVisible方法。<DateAndArea bind:sendDateAndArea="getDateAndArea"  bind:sendMonthVisible="getMonthVisible" initData="{{initData}}" />

然后再父组件当中,写对应的方法。

  getMonthVisible(e){if(e.detail.monthVisible){this.setData({echartsShow:false })//改变wxml当中,echarts图表的显示}else{this.setData({echartsShow:true })// this.MapInit();}},

在wxml当中,为每一个view设置了hidden="{{!echartsShow}}" ,当monthVisible为true的时候,隐藏图表,为false的时候,显示图表。

<DateAndArea bind:sendDateAndArea="getDateAndArea"  bind:sendMonthVisible="getMonthVisible" initData="{{initData}}" />
<view class="chartArea"><view class="FChart" hidden="{{!echartsShow}}"><ec-canvas id="myCanvas" ec="{{ dtmap }}"  canvas-id="myCanvas"></ec-canvas><button size="mini" class="chart-button" hidden="{{!isButtonVisible}}" bindtap="handleRefresh" id='myElement'>返回</button> </view>

如果是有请求的图表初始化,不需要定时器。如果没有请求的需要加定时器。

//dom节点出现需要时间,延迟一下重新渲染图片。setTimeout(() => {tongBIOption.title[1].subtext = that.data.searchObj.year;that.indicatorAnaylize();  }, 1000);

2.2zlevel:-1

错的,因为echarts图表层级是最高的

2.3force-use-old-canvas=false

虽然echarts会降级,但是带来的隐形问题就是反应慢,图表模糊

2.4cover-view不起作用

不知道是不是自己没用对

2.5是wx开发者工具的bug

2.6问题解决

我偶然发现了将二维表置于两个echarts图表当中,可以实现,但是他会有一个小bug,就是当下滑条触碰到底部时,二维表会自动向前移动一小段。造成了二维表和echarts图表中间间隔很大。最后我给父容器设置了position:relative,和echarts图表子容器设置了position:absolute(子绝父相)。就可以解决这个问题。

但是随即我发现二维表在两个echarts图表当中并不符合业务需求。所以我将二维表放在最后一个的时候,在这个二维表后面添加了颜色和父容器背景颜色一致的echarts图表。最终完成了我的需求。

相关链接:微信小程序中canvas、echarts层级太高,z-index,cover-view无效问题 - 简书

小程序中echarts因为小程序原生的canvas层级太高,而导致弹窗这类dom元素无法遮挡住canvashttps://www.cnblogs.com/elevens/p/14848521.html

总结:在绝大多数情况下,子元素的绝对定位都是相对于父元素定位

如果希望子元素相对于父元素进行定位,又不希望父元素脱标。常用的解决方案

  1. 父元素设置:position: relative

  2. 子元素设置:position: absolute

 3.使用微信小程序利用view来做一个表格

/**index.wxss**//*整个表格*/
.table{font-size: 15px;width: 98%;margin-left: 1%;margin-right: 1%;
}
/*设置行*/
.tr {width: 100%;display: flex;/*垂直居中*/align-items: center;/*水平居中*/justify-content: center;height: 3rem;
}
/*设置所有单元格*/
.th,.td{width: 40%;/*文字居中*/text-align: center;/*垂直居中*/align-items: center;/*水平居中*/justify-content: center;/*和上面.tr的height对应,数值修改一样就可*/height: 3rem;
}
/*设置表格边框的边框,不想麻烦所以所有的边框都在这里写了,可以自己修改*/
.tr,.th,.td,.table{border: 1rpx solid blue;
}
/*标题单元格*/
.th {display: flex;background: red;color: yellow;font-size: large;
}
/*文字单元格*/
.td{padding-top: 50rpx;background:gray;
}

4.在iphone机型上面显示正常的图表,在ipad上面显示不正常

可以通过给grid设置百分比来进行优化,字体的调整可以通过下面这个adjustSize()函数。

grid: {x: '20%',y: '25%',x2: '5%',y2: '15%', },
//根据屏幕大小,动态调整字体大小
function adjustSize(res) {  // 获取系统信息,同步方法  const systemInfo = wx.getSystemInfoSync();  let screenWidth = systemInfo.screenWidth; // 获取屏幕宽度  // 如果屏幕宽度为0(理论上不会发生,但为了安全起见检查)  if (!screenWidth) {  return res; // 或者返回一个默认值  }  // 计算调整因子  let adjustSize = 100 * (screenWidth / 1920);  // 返回调整后的值  return res * adjustSize;  
}

这篇关于echarts图表标题,层级,view表格,机型适配的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1137437

相关文章

利用Python开发Markdown表格结构转换为Excel工具

《利用Python开发Markdown表格结构转换为Excel工具》在数据管理和文档编写过程中,我们经常使用Markdown来记录表格数据,但它没有Excel使用方便,所以本文将使用Python编写一... 目录1.完整代码2. 项目概述3. 代码解析3.1 依赖库3.2 GUI 设计3.3 解析 Mark

Java利用poi实现word表格转excel

《Java利用poi实现word表格转excel》这篇文章主要为大家详细介绍了Java如何利用poi实现word表格转excel,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 一、每行对象类需要针对不同的表格进行对应的创建。package org.example.wordToEx

使用EasyExcel实现简单的Excel表格解析操作

《使用EasyExcel实现简单的Excel表格解析操作》:本文主要介绍如何使用EasyExcel完成简单的表格解析操作,同时实现了大量数据情况下数据的分次批量入库,并记录每条数据入库的状态,感兴... 目录前言固定模板及表数据格式的解析实现Excel模板内容对应的实体类实现AnalysisEventLis

Python如何在Word中生成多种不同类型的图表

《Python如何在Word中生成多种不同类型的图表》Word文档中插入图表不仅能直观呈现数据,还能提升文档的可读性和专业性,本文将介绍如何使用Python在Word文档中创建和自定义各种图表,需要的... 目录在Word中创建柱形图在Word中创建条形图在Word中创建折线图在Word中创建饼图在Word

使用Python实现表格字段智能去重

《使用Python实现表格字段智能去重》在数据分析和处理过程中,数据清洗是一个至关重要的步骤,其中字段去重是一个常见且关键的任务,下面我们看看如何使用Python进行表格字段智能去重吧... 目录一、引言二、数据重复问题的常见场景与影响三、python在数据清洗中的优势四、基于Python的表格字段智能去重

Java实战之利用POI生成Excel图表

《Java实战之利用POI生成Excel图表》ApachePOI是Java生态中处理Office文档的核心工具,这篇文章主要为大家详细介绍了如何在Excel中创建折线图,柱状图,饼图等常见图表,需要的... 目录一、环境配置与依赖管理二、数据源准备与工作表构建三、图表生成核心步骤1. 折线图(Line Ch

如何利用Python实现给Excel表格截图

《如何利用Python实现给Excel表格截图》这篇文章主要为大家详细介绍了如何利用Python实现给Excel表格截图功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 我搜索了网络上的方案,感觉把 Excel 表格转换为 html 再用 platwright 截图是比China编程较顺

vue基于ElementUI动态设置表格高度的3种方法

《vue基于ElementUI动态设置表格高度的3种方法》ElementUI+vue动态设置表格高度的几种方法,抛砖引玉,还有其它方法动态设置表格高度,大家可以开动脑筋... 方法一、css + js的形式这个方法需要在表格外层设置一个div,原理是将表格的高度设置成外层div的高度,所以外层的div需要

使用SQL语言查询多个Excel表格的操作方法

《使用SQL语言查询多个Excel表格的操作方法》本文介绍了如何使用SQL语言查询多个Excel表格,通过将所有Excel表格放入一个.xlsx文件中,并使用pandas和pandasql库进行读取和... 目录如何用SQL语言查询多个Excel表格如何使用sql查询excel内容1. 简介2. 实现思路3

C#图表开发之Chart详解

《C#图表开发之Chart详解》C#中的Chart控件用于开发图表功能,具有Series和ChartArea两个重要属性,Series属性是SeriesCollection类型,包含多个Series对... 目录OverviChina编程ewSeries类总结OverviewC#中,开发图表功能的控件是Char