1.标题组件的基本使用

图标组件使用title节点进行配置。

标题分为主标题和副标题,

主标题的文本内容使用 'text' 属性进行设置

副标题使用 'subtext' 属性进行设置

var option = {
title:{
text:"我是标题",
subtext:"我是副标题"
}
}

2.标题组件的位置

标题组件默认在左上角,可以像css一样为其设置位置

left/right/top/bottom:分别设置标题组件位于4个方向的距离,值可以是数字(代表具体的像素),百分比,关键字(水平居中使用center,垂直居中使用middle)

水平垂直居中

var option = {
title: {
text: "我是标题",
subtext: "我是副标题",
top:'middle',
left:'center'
}
}

使用百分比

var option = {
title: {
text: "我是标题",
subtext: "我是副标题",
top:'50%',
left:'50%'
}
}

使用数字(容器宽高600*300)

var option = {
title: {
text: "我是标题",
subtext: "我是副标题",
left:300,//按照当前容器宽高 相当于 50%
top:150
}
}

3.多个标题组件

一个图表可以有一个或多个标题组件,每个标题组件对应一个配置对象,当有多个标题组件时,使用数组将其包裹起来,例如:

配置多个标题组件

var option = {
title: [//含有多个标题组件时,使用数组进行包裹
{//每个组件就是一个对象
text: "我是标题1",
subtext: "我是副标题1",
left: 150,
top: 100
},
{//每个组件就是一个对象
text: "我是标题2",
subtext: "我是副标题2",
left: 300,
top: 150
}
]
}

4.显示/隐藏标题组件

如果没有配置标题组件,则该组件没有显示/隐藏的说法(都不存在,何来隐藏/显示)

如果配置了标题组件,则该组件默认显示。

如果配置了组件,但是某些情况下需要动态切换显示/隐藏,就需要用到 'show' 属性。

'show' 属性的值是布尔值,通过他来切换标题的组件的显示/隐藏

 var option = {
title: [//含有多个标题组件时,使用数组进行包裹
{//每个组件就是一个对象
text: "我是标题1",
subtext: "我是副标题1",
left: 150,
top: 100,
show:true,//默认展示
},
{//每个组件就是一个对象
text: "我是标题2",
subtext: "我是副标题2",
left: 300,
top: 150,
show:false,//默认隐藏
}
]
}

使用js动态切换标题组件的显示/隐藏

<div class="btn_box">
<button type="button" class="btn btn-primary" onclick="showTitle(0)">标题1切换显示/隐藏</button>
<button type="button" class="btn btn-primary" onclick="showTitle(1)">标题2切换显示/隐藏</button>
</div>
function showTitle(index){
//取反
option.title[index].show = !option.title[index].show
//更新图表
charts.setOption(option)
}

5.标题组件的盒模型?

标题组件和html的元素一样,有背景色,内边距,边框,阴影等样式可以设置,具体如下:

(1)背景色

backgroundColor:'red'

(2)内边距

padding:10

(3)边框系列

边框大小:borderWidth

边框颜色:borderColor

边框圆角:borderRadius

(4)阴影系列

阴影的模糊大小:shadowBlur

阴影颜色:shadowColor

阴影偏移:shadowOffsetX/shadowOffsetY

var option = {
title: [//含有多个标题组件时,使用数组进行包裹
{//每个组件就是一个对象
text: "我是标题1",
subtext: "我是副标题1",
left: 150,
top: 100,
show:true,//默认展示
backgroundColor:'red',//红色背景
padding:5,//内边距
borderWidth:5,//边框宽度
borderColor:'yellow',//边框颜色
borderRadius:1,//边框圆角
shadowBlur:1,//阴影大小
shadowColor:'#666',//阴影颜色
shadowOffsetX:1,//阴影偏移
shadowOffsetY:1,//阴影偏移
},
{//每个组件就是一个对象
text: "我是标题2",
subtext: "我是副标题2",
left: 300,
top: 150,
show:true,
backgroundColor:'lightblue',//浅蓝背景
padding:20,//内边距
borderWidth:20,//边框宽度
borderColor:'orange',//边框颜色
borderRadius:5,//边框圆角
shadowBlur:20,//阴影大小
shadowBlur:10,//阴影大小
shadowColor:'#666',//阴影颜色
shadowOffsetX:5,//阴影偏移
shadowOffsetY:5,//阴影偏移
}
]
}

6.文字样式

主标题的文字样式(颜色,斜体,加粗,字体大小)都统一配置到textStyle这个对象中。

而副标题的文字样式(颜色,斜体,加粗,字体大小)则统一配置到subtextStyle这个对象中。

PS:其实textStyle是一个通用的配置项,只要有文本的地方就可以对他进行配置,不仅仅局限在某个组件或者某个节点中。

var option = {
title: [//含有多个标题组件时,使用数组进行包裹
{//每个组件就是一个对象
text: "我是标题1",
subtext: "我是副标题1",
left: 150,
top: 100,
textStyle:{//主标题文字样式
color:'red',//字体颜色
fontSize:20,//字体大小
fontStyle:'italic',//斜体
fontWeight:500,//加粗
},
subtextStyle:{//副标题文字样式
color:'blue',//字体颜色
fontSize:20,//字体大小
fontStyle:'italic',//斜体
fontWeight:500,//加粗
}
},
]
}

7.组件层级

当多个标题叠加在一起时,默认情况下后面的组件会覆盖前面的组件,如果想改变这种设置,可以配置 'z' 属性(相当于css里面的z-index),来改变图形的前后顺序

定位的位置一致时,默认的效果(蓝色在后面,所以蓝色盖住了红色)

var option = {
title: [//含有多个标题组件时,使用数组进行包裹
{//每个组件就是一个对象
text: "我是标题1",
left: 150,//定位一致
top: 100,//定位一致
subtext: '我是副标题1',
backgroundColor:'red',//红
},
{//每个组件就是一个对象
text: "我是标题2",
left: 150,//定位一致
top: 100,//定位一致
subtext: '我是副标题2',
backgroundColor:'blue',//蓝
},
]
}

改变 'z' 属性(默认是2 建议设置时10起步)

var option = {
title: [//含有多个标题组件时,使用数组进行包裹
{//每个组件就是一个对象
text: "我是标题1",
left: 150,//定位一致
top: 100,//定位一致
subtext: '我是副标题1',
backgroundColor:'red',
z:10,//设置层级
},
{//每个组件就是一个对象
text: "我是标题2",
left: 150,//定位一致
top: 100,//定位一致
subtext: '我是副标题2',
backgroundColor:'blue',
},
]
}

8.文本的排列顺序

这里主要是两个属性:textAlign / textVerticalAlign 可选值:'left'、'right'、'center'。

但是他们并不是指文本的对齐方式,因为本身组件大小就是由内容撑开的,所以没有文本对齐一说。他们值的是文本的排序方向

默认情况下,文字从定位原点从左往右依次排列,例如:

var option = {
title: [//含有多个标题组件时,使用数组进行包裹
{//每个组件就是一个对象
text: "我是标题1",
left: '50%',
top: '50%',
subtext: '我是副标题1',
},
]
}

对比:

var option = {
title: [//含有多个标题组件时,使用数组进行包裹
{//每个组件就是一个对象
text: "默认",
left: '50%',
top: '20%',
},
{//每个组件就是一个对象
text: "center",
left: '50%',
top: '50%',
textAlign:'center'
},
{//每个组件就是一个对象
text: "right",
left: '50%',
top: '70%',
textAlign:'right'
},
]
}

这种模式下,排序方式一般使用left即可

除非定位时使用50%,又想居中,可以尝试使用center

9.标题的点击事件

默认情况下,title组件不支持点击事件,需要在option中开启

title:{
triggerEvent: true
}

通过图表实例调用on方法来进行事件监听

some_chart.on('click', 'title', function (e) {
console.log(e)
})

PS:成功的话,鼠标移动到title上面时指针会变成pointer形状,表示已经可以点击

ECharts 标题组件的更多相关文章

  1. 转:ECharts图表组件入门教程之Theme:ECharts图表的皮肤是什么?如何给图表换主题(皮肤)Theme?

    一.什么是ECharts图表的皮肤(主题)? 针对这个问题我只能这样回答,ECharts图表的主题(皮肤)就犹如人的衣服一样,是用来衬托和渲染主体,使其变得更加美观好看的目的.你去过ECharts图表 ...

  2. vue-cli ——解决多次复用含有Echarts图表组件的问题

    在vue项目里,组件复用是一件很开心的事,可以节省很多时间去排版,达到事半功倍效果,但是昨晚在vue-cli项目里组件复用时发现基于Echarts图表的组件不能够复用,昨晚捯饬了很久,终于还是解决了这 ...

  3. 转:ECharts图表组件之简单关系图:如何轻松实现另类站点地图且扩展节点属性实现点击节点页面跳转

    站点地图不外乎就是罗列一个网站的层次结构,提炼地讲就是一个关系结构图.那么我们如何巧用ECharts图表组件内的简单关系结构图来实现一个站点的地图结构呢?另外如何点击某个节点的时候实现页面跳转呢? 针 ...

  4. vue echarts vue-echarts组件使用

    1.git地址 https://github.com/ecomfe/vue-echarts 2.使用 (1)安装 npm install vue-echarts --save-dev (2)引入 im ...

  5. ECharts grid组件离容器的距离

    ECharts grid组件离容器的距离 由 Carrie 创建, 最后一次修改 2017-09-04 grid.left   |   string, number [ default: '10%' ...

  6. 在Vue中echarts可视化组件的使用

    echarts组件官网地址:https://echarts.apache.org/examples/zh/index.html 1.找到脚手架项目所在地址,执行cnpm install echarts ...

  7. vue2.0 自定义 饼状图 (Echarts)组件

    1.自定义  图表  组件 Echarts.vue <!-- 自定义 echart 组件 --> <template> <div> <!-- echart表格 ...

  8. ECharts公共组件:title详解、 tooltip详解、toolbox详解、legend详解、dataZoom详解、visualMap全解

    1. Title mytextStyle={ color:"#333",                           //文字颜色 fontStyle:"norm ...

  9. 【小程序】---- 封装Echarts公共组件,遍历图表实现多个饼图

    一.问题描述: 在小程序的项目中,封装公共的饼图组件,并在需要的页面引入使用.要求一个页面中有多个饼图,动态渲染不同的数据. 二.效果实现: 1. 查看——小程序使用Echarts的方式 2. 封装饼 ...

  10. echarts标题(title)配置

    var option = {         //标题         title : {             show:true,//显示策略,默认值true,可选为:true(显示) | fa ...

随机推荐

  1. 一文了解svg之stroke属性

    属性 stroke-width SVG具有stroke-width定义笔触宽度的CSS属性. <svg width="500" height="120"& ...

  2. DECL: 针对噪声时间序列的去噪感知对比学习《Denoising-Aware Contrastive Learning for Noisy Time Series》(时间序列、对比学习、去噪)

    今天是2024年9月12日,组会摸鱼,很久没看论文了,在摸鱼看代码,最近IJCAI 2024出来了,找了几篇论文看,首先这是第一篇. 论文:Denoising-Aware Contrastive Le ...

  3. CSS – Transition & Animation

    前言 之前的笔记 CSS – W3Schools 学习笔记 (3) 就有讲过 CSS Transitions 和 CSS Animations. 这里做一个整理, 补上一些细节. Transition ...

  4. uni-app v3.0.0-alpha-3090220231010001

    https://uniapp.dcloud.net.cn/tutorial/ #-------------------------------------------------------- 未分类 ...

  5. golang的类型转换

    今天我们来说说一个大家每天都在做但很少深入思考的操作--类型转换. 本文索引 一行奇怪的代码 go的类型转换 数值类型之间互相转换 unsafe相关的转换 字符串到byte和rune切片的转换 sli ...

  6. USB2.0设备的休眠挂起及远程唤醒

    USB可见设备状态,分为连接(Attached),上电(Powered),默认(Default),地址(Address),配置(Configured)和挂起(Suspended)6个状态.所谓可见,即 ...

  7. SMMU中stage1 和stage2 的意思

    ARM SMMU(System Memory Management Unit)是一种用于ARM架构的内存管理单元,它支持两阶段的地址转换机制,即Stage 1和Stage 2.这种机制允许操作系统和虚 ...

  8. vagrant文件基础配置

    Vagrant.configure("2") do |config| config.vm.box = "centos7" # box 名称 config.vm. ...

  9. 如何集成化管理API_方便企业内外部调用?

    API 已成为企业数字战略中不可或缺的一部分.它们使不同软件系统.应用程序和服务之间能够高效.灵活地相互沟通.API不仅能提升企业内部各部门之间的协作效率,还能加强与外部合作伙伴及客户之间的互动. A ...

  10. 快速部署mysql并开启binlog

    curl -fsSL https://get.docker.com | bash yum -y install docker-ce sudo systemctl start docker sudo s ...