codecamp

设置ECharts时间轴的文本标签

timeline.label   |   Object

设置 ECharts 时间轴的文本标签。

ECharts 时间轴文本标签的状态有两个: normal 和 emphasis。normal 是文本正常的样式,emphasis 是文本高亮的样式,比如鼠标悬浮或者图例联动高亮的时候会使用 emphasis 作为文本的样式。

timeline.label.normal   |   Object

在 normal 状态下设置 ECharts 时间轴文本标签。

timeline.label.normal.position   |   string, number

[ default: 'auto' ]

时间轴文本标签的位置。

可选的配置方式:

  • 'auto': 完全自动决定。
  • 'left': 贴左边界放置。 当 timline.orient 为 'vertical' 时有效。
  • 'right':当 timline.orient 为 'vertical' 时有效。 贴右边界放置。
  • 'top': 贴上边界放置。 当 timline.orient 为 'horizontal' 时有效。
  • 'bottom': 贴下边界放置。 当 timline.orient 为 'horizontal' 时有效。
  • number: 指定某个数值时,表示 label 和轴的距离。为 0 时则和坐标轴重合,可以为正负值,决定 label 在坐标轴的哪一边。

timeline.label.normal.show   |   boolean

[ default: true ]

是否显示 label。

timeline.label.normal.interval   |   string, number

[ default: 'auto' ]

label 的间隔。当指定为数值时,例如指定为 2,则每隔两个显示一个 label。

timeline.label.normal.rotate   |   prefix

[ default: 0 ]

label 的旋转角度。正值表示逆时针旋转。

timeline.label.normal.formatter   |   string, Function

[ default: null ]

刻度标签的内容格式器,支持字符串模板和回调函数两种形式。

示例:

// 使用字符串模板,模板变量为刻度默认标签 {value}
formatter: '{value} kg'

// 使用函数模板,函数参数分别为刻度数值(类目),刻度的索引
formatter: function (value, index) {
    // 格式化成月/日,只在第一个刻度显示年份
    var date = new Date(value);
    var texts = [(date.getMonth() + 1), date.getDate()];
    if (index === 0) {
        texts.unshift(date.getYear());
    }
    return texts.join('/');
}

timeline.label.normal.color   |   Color

[ default: '#304654' ]

timeline.lable.normal文字的颜色。

timeline.label.normal.fontStyle   |   string

[ default: 'normal' ]

timeline.lable.normal文字字体的风格

可选:

  • 'normal'
  • 'italic'
  • 'oblique'

timeline.label.normal.fontWeight   |   string

[ default: normal ]

timeline.lable.normal文字字体的粗细

可选:

  • 'normal'
  • 'bold'
  • 'bolder'
  • 'lighter'
  • 100 | 200 | 300 | 400...

timeline.label.normal.fontFamily   |   string

[ default: 'sans-serif' ]

timeline.lable.normal文字的字体系列

还可以是 'serif' , 'monospace', 'Arial', 'Courier New', 'Microsoft YaHei', ...

timeline.label.normal.fontSize   |   number

[ default: 12 ]

timeline.lable.normal文字的字体大小

timeline.label.normal.align   |   string

文字水平对齐方式,默认自动。

可选:

  • 'left'
  • 'center'
  • 'right'

rich 中如果没有设置 align,则会取父层级的 align。例如:

{
    align: right,
    rich: {
        a: {
            // 没有设置 `align`,则 `align` 为 right
        }
    }
}

timeline.label.normal.verticalAlign   |   string

文字垂直对齐方式,默认自动。

可选:

  • 'top'
  • 'middle'
  • 'bottom'

rich 中如果没有设置 verticalAlign,则会取父层级的 verticalAlign。例如:

{
    verticalAlign: bottom,
    rich: {
        a: {
            // 没有设置 `verticalAlign`,则 `verticalAlign` 为 bottom
        }
    }
}

timeline.label.normal.lineHeight   |   number

时间轴文本标签的行高。

rich 中如果没有设置 lineHeight,则会取父层级的 lineHeight。例如:

{
    lineHeight: 56,
    rich: {
        a: {
            // 没有设置 `lineHeight`,则 `lineHeight` 为 56
        }
    }
}

timeline.label.normal.backgroundColor   |   string, Object

[ default: 'transparent' ]

文字块背景色。

可以是直接的颜色值,例如:'#123234', 'red', rgba(0,23,11,0.3)'。

可以支持使用图片,例如:

backgroundColor: {
    image: 'xxx/xxx.png'
    // 这里可以是图片的 URL,
    // 或者图片的 dataURI,
    // 或者 HTMLImageElement 对象,
    // 或者 HTMLCanvasElement 对象。
}

当使用图片的时候,可以使用 width 或 height 指定高宽,也可以不指定自适应。

timeline.label.normal.borderColor   |   string

[ default: 'transparent' ]

文字块边框颜色。

timeline.label.normal.borderWidth   |   number

[ default: 0 ]

文字块边框宽度。

timeline.label.normal.borderRadius   |   number, Array

[ default: 0 ]

文字块的圆角。

timeline.label.normal.padding   |   number, Array

[ default: 0 ]

文字块的内边距。例如:

  • padding: [3, 4, 5, 6]:表示 [上, 右, 下, 左] 的边距。
  • padding: 4:表示 padding: [4, 4, 4, 4]。
  • padding: [3, 4]:表示 padding: [3, 4, 3, 4]。

注意,文字块的 width 和 height 指定的是内容高宽,不包含 padding。

timeline.label.normal.shadowColor   |   string

[ default: 'transparent' ]

文字块的背景阴影颜色。

timeline.label.normal.shadowBlur   |   number

[ default: 0 ]

文字块的背景阴影长度。

timeline.label.normal.shadowOffsetX   |   number

[ default: 0 ]

文字块的背景阴影 X 偏移。

timeline.label.normal.shadowOffsetY   |   number

[ default: 0 ]

文字块的背景阴影 Y 偏移。

timeline.label.normal.width   |    number, string

文字块的宽度。一般不用指定,不指定则自动是文字的宽度。在想做表格项或者使用图片(参见 backgroundColor)时,可能会使用它。

注意,文字块的 width 和 height 指定的是内容高宽,不包含 padding。

width 也可以是百分比字符串,如 '100%'。表示的是所在文本块的 contentWidth(即不包含文本块的 padding)的百分之多少。之所以以 contentWidth 做基数,因为每个文本片段只能基于 content box 布局。如果以 outerWidth 做基数,则百分比的计算在实用中不具有意义,可能会超出。

注意,如果不定义 rich 属性,则不能指定 width 和 height。

timeline.label.normal.height   |   number, string

文字块的高度。一般不用指定,不指定则自动是文字的高度。在使用图片(参见 backgroundColor)时,可能会使用它。

注意,文字块的 width 和 height 指定的是内容高宽,不包含 padding。

注意,如果不定义 rich 属性,则不能指定 width 和 height。

timeline.label.normal.textBorderColor   |   string

[ default: 'transparent' ]

文字本身的描边颜色。

timeline.label.normal.textBorderWidth   |   number

[ default: 0 ]

文字本身的描边宽度。

timeline.label.normal.textShadowColor   |   string

[ default: 'transparent' ]

文字本身的阴影颜色。

timeline.label.normal.textShadowBlur   |   number

[ default: 0 ]

文字本身的阴影长度。

timeline.label.normal.textShadowOffsetX   |   number

[ default: 0 ]

文字本身的阴影 X 偏移。

timeline.label.normal.textShadowOffsetY   |   number

[ default: 0 ]

文字本身的阴影 Y 偏移。

timeline.label.normal.rich   |   Object

在 rich 里面,可以自定义富文本样式。利用富文本样式,可以在标签中做出非常丰富的效果。

例如:

label: {
    normal: {

        // 在文本中,可以对部分文本采用 rich 中定义样式。
        // 这里需要在文本中使用标记符号:
        // `{styleName|text content text content}` 标记样式名。
        // 注意,换行仍是使用 '\n'。
        formatter: [
            '{a|这段文本采用样式a}',
            '{b|这段文本采用样式b}这段用默认样式{x|这段用样式x}'
        ].join('\n'),

        rich: {
            a: {
                color: 'red',
                lineHeight: 10
            },
            b: {
                backgroundColor: {
                    image: 'xxx/xxx.jpg'
                },
                height: 40
            },
            x: {
                fontSize: 18,
                fontFamily: 'Microsoft YaHei',
                borderColor: '#449933',
                borderRadius: 4
            },
            ...
        }
    }
}

详情参见教程:富文本标签

timeline.label.emphasis   |   Object

在 emphasis 状态下设置 ECharts 时间轴文本标签。

timeline.label.emphasis.show   |   boolean

[ default: true ]

是否显示 label。

timeline.label.emphasis.interval   |   string, number

[ default: 'auto' ]

label 的间隔。当指定为数值时,例如指定为 2,则每隔两个显示一个 label。

timeline.label.emphasis.rotate   |   prefix

[ default: 0 ]

label 的旋转角度。正值表示逆时针旋转。

timeline.label.emphasis.formatter   |   string, Function

[ default: null ]

刻度标签的内容格式器,支持字符串模板和回调函数两种形式。

示例:

// 使用字符串模板,模板变量为刻度默认标签 {value}
formatter: '{value} kg'

// 使用函数模板,函数参数分别为刻度数值(类目),刻度的索引
formatter: function (value, index) {
    // 格式化成月/日,只在第一个刻度显示年份
    var date = new Date(value);
    var texts = [(date.getMonth() + 1), date.getDate()];
    if (index === 0) {
        texts.unshift(date.getYear());
    }
    return texts.join('/');
}

timeline.label.emphasis.color   |   Color

[ default: '#c23531' ]

timeline.lable.emphasis文字的颜色。

timeline.label.emphasis.fontStyle   |   string

[ default: 'normal' ]

timeline.lable.emphasis文字字体的风格

可选:

  • 'normal'
  • 'italic'
  • 'oblique'

timeline.label.emphasis.fontWeight   |   string

[ default: normal ]

timeline.lable.emphasis文字字体的粗细

可选:

  • 'normal'
  • 'bold'
  • 'bolder'
  • 'lighter'
  • 100 | 200 | 300 | 400...

timeline.label.emphasis.fontFamily   |   string

[ default: 'sans-serif' ]

timeline.lable.emphasis文字的字体系列

还可以是 'serif' , 'monospace', 'Arial', 'Courier New', 'Microsoft YaHei', ...

timeline.label.emphasis.fontSize   |   number

[ default: 12 ]

timeline.lable.emphasis文字的字体大小

timeline.label.emphasis.align   |   string

文字水平对齐方式,默认自动。

可选:

  • 'left'
  • 'center'
  • 'right'

rich 中如果没有设置 align,则会取父层级的 align。例如:

{
    align: right,
    rich: {
        a: {
            // 没有设置 `align`,则 `align` 为 right
        }
    }
}

timeline.label.emphasis.verticalAlign   |   string

文字垂直对齐方式,默认自动。

可选:

  • 'top'
  • 'middle'
  • 'bottom'

rich 中如果没有设置 verticalAlign,则会取父层级的 verticalAlign。例如:

{
    verticalAlign: bottom,
    rich: {
        a: {
            // 没有设置 `verticalAlign`,则 `verticalAlign` 为 bottom
        }
    }
}

timeline.label.emphasis.lineHeight   |   number

emphasis 状态下时间轴文本标签的行高。

rich 中如果没有设置 lineHeight,则会取父层级的 lineHeight。例如:

{
    lineHeight: 56,
    rich: {
        a: {
            // 没有设置 `lineHeight`,则 `lineHeight` 为 56
        }
    }
}

timeline.label.emphasis.backgroundColor   |   string, Object

[ default: 'transparent' ]

文字块背景色。

可以是直接的颜色值,例如:'#123234', 'red', rgba(0,23,11,0.3)'。

可以支持使用图片,例如:

backgroundColor: {
    image: 'xxx/xxx.png'
    // 这里可以是图片的 URL,
    // 或者图片的 dataURI,
    // 或者 HTMLImageElement 对象,
    // 或者 HTMLCanvasElement 对象。
}

当使用图片的时候,可以使用 width 或 height 指定高宽,也可以不指定自适应。

timeline.label.emphasis.borderColor   |   string

[ default: 'transparent' ]

文字块边框颜色。

timeline.label.emphasis.borderWidth   |   number

[ default: 0 ]

文字块边框宽度。

timeline.label.emphasis.borderRadius   |   number, Array

[ default: 0 ]

文字块的圆角。

timeline.label.emphasis.padding   |   number, Array

[ default: 0 ]

文字块的内边距。例如:

  • padding: [3, 4, 5, 6]:表示 [上, 右, 下, 左] 的边距。
  • padding: 4:表示 padding: [4, 4, 4, 4]。
  • padding: [3, 4]:表示 padding: [3, 4, 3, 4]。

注意,文字块的 width 和 height 指定的是内容高宽,不包含 padding。

timeline.label.emphasis.shadowColor   |   string

[ default: 'transparent' ]

文字块的背景阴影颜色。

timeline.label.emphasis.shadowBlur   |   number

[ default: 0 ]

文字块的背景阴影长度。

timeline.label.emphasis.shadowOffsetX   |   number

[ default: 0 ]

文字块的背景阴影 X 偏移。

timeline.label.emphasis.shadowOffsetY   |   number

[ default: 0 ]

文字块的背景阴影 Y 偏移。

timeline.label.emphasis.width   |   number, string

文字块的宽度。一般不用指定,不指定则自动是文字的宽度。在想做表格项或者使用图片(参见 backgroundColor)时,可能会使用它。

注意,文字块的 width 和 height 指定的是内容高宽,不包含 padding。

width 也可以是百分比字符串,如 '100%'。表示的是所在文本块的 contentWidth(即不包含文本块的 padding)的百分之多少。之所以以 contentWidth 做基数,因为每个文本片段只能基于 content box 布局。如果以 outerWidth 做基数,则百分比的计算在实用中不具有意义,可能会超出。

注意,如果不定义 rich 属性,则不能指定 width 和 height。

timeline.label.emphasis.height   |   number, string

文字块的高度。一般不用指定,不指定则自动是文字的高度。在使用图片(参见 backgroundColor)时,可能会使用它。

注意,文字块的 width 和 height 指定的是内容高宽,不包含 padding。
注意,如果不定义 rich 属性,则不能指定 width 和 height。

timeline.label.emphasis.textBorderColor   |   string

[ default: 'transparent' ]

文字本身的描边颜色。

timeline.label.emphasis.textBorderWidth   |   number

[ default: 0 ]

文字本身的描边宽度。

timeline.label.emphasis.textShadowColor   |   string

[ default: 'transparent' ]

文字本身的阴影颜色。

timeline.label.emphasis.textShadowBlur   |   number

[ default: 0 ]

文字本身的阴影长度。

timeline.label.emphasis.textShadowOffsetX   |   number

[ default: 0 ]

文字本身的阴影 X 偏移。

timeline.label.emphasis.textShadowOffsetY   |   number

[ default: 0 ]

文字本身的阴影 Y 偏移。

timeline.label.emphasis.rich   |   Object

在 rich 里面,可以自定义富文本样式。利用富文本样式,可以在标签中做出非常丰富的效果。

例如:

label: {
    normal: {

        // 在文本中,可以对部分文本采用 rich 中定义样式。
        // 这里需要在文本中使用标记符号:
        // `{styleName|text content text content}` 标记样式名。
        // 注意,换行仍是使用 '\n'。
        formatter: [
            '{a|这段文本采用样式a}',
            '{b|这段文本采用样式b}这段用默认样式{x|这段用样式x}'
        ].join('\n'),

        rich: {
            a: {
                color: 'red',
                lineHeight: 10
            },
            b: {
                backgroundColor: {
                    image: 'xxx/xxx.jpg'
                },
                height: 40
            },
            x: {
                fontSize: 18,
                fontFamily: 'Microsoft YaHei',
                borderColor: '#449933',
                borderRadius: 4
            },
            ...
        }
    }
}

详情参见教程:富文本标签

时间轴timeline轴线如何设置
ECharts时间轴图形样式设置
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

ECharts配置项.setOption

ECharts图例组件配置项

ECharts图例组件配置 文本样式

ECharts xAxis配置 直角坐标系x轴

ECharts xAxis配置 x坐标轴名称的文本样式

ECharts xAxis配置 设置x坐标轴轴线

ECharts xAxis配置 x坐标轴刻度设置

ECharts xAxis配置 x坐标轴刻度标签设置

xAxis配置x坐标轴分隔线

xAxis配置坐标轴分隔区域设置

xAxis配置类目数据

ECharts xAxis配置 类目标签的文本样式

ECharts极坐标系的径向轴

如何使用dataZoom组件

ECharts工具栏组件(toolbox)

ECharts工具栏的feature属性

ECharts导出图片的操作

ECharts的数据视图工具

ECharts数据区域缩放工具

ECharts动态类型切换工具

ECharts区域选择组件(brush)

ECharts系列列表:平行坐标系

ECharts系列:主题河流图

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }