echart的label标签文字过长显示不全怎么办?

echart的官方只提供label标签文字过长是斜着显示的方式,并且文字显示不全重叠等现象。那么只能自己的方式来实现。

option = {
title : {
text: ‘世界人口总量‘,
subtext: ‘数据来自网络‘
},
tooltip : {
trigger: ‘axis‘
},
legend: {
data:[‘2011年‘, ‘2012年‘]
},
toolbox: {
show : true,
feature : {
mark : {show: true},
dataView : {show: true, readOnly: false},
magicType: {show: true, type: [‘line‘, ‘bar‘]},
restore : {show: true},
saveAsImage : {show: true}
}
},
calculable : true,
xAxis : [
{
type : ‘value‘,
boundaryGap : [0, 0.01]
}
],
grid: { // 控制图的大小,调整下面这些值就可以,
x: 400,//x的值可以空值y轴与label标签的距离,效果如下图:
x2: 100,
y2: 50,// y2可以控制 X轴跟Zoom控件之间的间隔,避免以为倾斜后造成 label重叠到zoom上
},
yAxis : [
{
type : ‘category‘,
data : [‘巴西闪亮的空间粉丝的房间里睡觉法律手段尚福林时间浪费时间f‘
,‘印尼三家公司的房间里睡上了飞机哦我i金佛我i额酸辣粉鸡尾酒佛问‘
,‘美国‘,‘印度‘,‘中国‘],
axisLabel:{
interval: 0,//标签设置为全部显示
formatter:function(params){
var newParamsName = "";// 最终拼接成的字符串
var paramsNameNumber = params.length;// 实际标签的个数
var provideNumber = 20;// 每行能显示的字的个数
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

}
}
}
],
series : [
{
name:‘2011年‘,
type:‘bar‘,
data:[18203, 23489, 29034, 104970, 131744]
},
{
name:‘2012年‘,
type:‘bar‘,
data:[19325, 23438, 31000, 121594, 134141]
}
]
};

效果图如下:

时间: 2024-10-11 00:39:26

echart的label标签文字过长显示不全怎么办?的相关文章

UILabel标签文字过长时的显示方式

lineBreakMode:设置标签文字过长时的显示方式. label.lineBreakMode = NSLineBreakByCharWrapping;    //以字符为显示单位显示,后面部分省略不显示. label.lineBreakMode = NSLineBreakByClipping;        //剪切与文本宽度相同的内容长度,后半部分被删除. label.lineBreakMode = NSLineBreakByTruncatingHead;  //前面部分文字以……方式省

html文字过长显示省略号

<p style="width: 300px;overflow: hidden;white-space: nowrap;text-overflow: ellipsis;"> html文字过长显示省略号,布布扣,bubuko.com

JavaScript解决select下拉框中的内容太长显示不全的问题

JavaScript解决select下拉框中的内容太长显示不全的问题 1.说明 有些情况下,select下拉框的内容过长,导致部分看不见: 现在通过鼠标事件,让下拉框中的内容显示完全 2.实现源码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html

div css每行文字显示一半 同时文字字体重叠显示不全解决方法

CSS DIV布局中出现单行或多行文字的每行文字内容不能显示全,上下行文字有一点点重叠现象,文字字体只显示一半解决方法,在低版本IE特别明显文字字体显示不全,在谷歌浏览器等高版本IE浏览器测试还好些. 新手布局时候特别爱出现DIV盒子里文字字体显示不完整,音乐沙发甚至上下行文字有一点重叠现象. css字体文字重叠显示不完整重叠字体字体文字重叠显示不完整同时有重叠重合效果截图 在DIV+CSS布局中造成这种字体显示不全,音乐沙发显示一半同时多行文字有一点点重叠情况原因:css行高小于CSS字体大小

css实现文字过长显示省略号的方法

<div class="title">当对象内文本溢出时显示省略标记</div> 这是一个例子,其实我们只需要显示如下长度: css实现网页中文字过长截取... title class应该这样写: .title{ width:300px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;} 说明: 1.宽度一定要设置,可以根据实际需求调整. 2.white-space:nowrap是禁止文字

iOS label的文字竖着显示

创建uilabel的分类 //竖着显示 .h写入 @property (nonatomic) NSString *verticalText; .m写入 - (NSString *)verticalText{ // 利用runtime添加属性 return objc_getAssociatedObject(self, @selector(verticalText)); } - (void)setVerticalText:(NSString *)verticalText{ objc_setAssoc

自己写一个文字过长显示省略号的函数

function  points(strin,num){ //strin表示目标字符,num表示在第几个字符用省略号显示 var Str = "",len = strin.length; if(len<=num){ Str = strin; }else if(num <= 3){ Str = strin.slice(0,num).trim() + "..."; }else{ Str =strin.slice(0,num-3) + "...&qu

iOS AutoLayout自动布局中级开发教程(4)-label等文字自动适应大小,宽度

相比大家会经常遇到  label  或则  textfield等显示文字的  视图时,显示不全,或者无法自动 变化长度  ,自动改变字体的 设置: 今天给大家演示一下,如何 在autolayout让label 适应 不同的 宽度: 1.自动 改变字体: 首先设置好 label 的约束,包括宽高之后,默认来看 你的  label是不变了 ,但是 当遇到 文字较多时,就会出现显示不全的问题: 如图,我们设置好 Label的宽度和高度,和其他约束,固定住 label, 这是我们增加label的字数..

自定义UILabel,使文字居左上显示

默认的UILabel当文字少的时候是垂直居中显示的(即位于center点),下面说下如何使label的文字居左上显示: 第一种方法:拼接字符串在文字后面循环添加换行符和空格(只加换行符系统会默认只换行一次). 使用category,写一个UILabel的分类,添加对象方法重新绘制UILabel(根据想显示效果的不同可以添加不同的对象方法),在需要使用的地方再调用一下就可以了.