codecamp

利用富文本样式设置geo组件文本标签

geo.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
            },
            ...
        }
    }
}

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

geo.label.normal.rich.<user defined style name>   |   Object

geo.label.normal.rich.<user defined style name>.color   |   Color

[ default: "#fff" ]

文字的颜色。

如果设置为 'auto',则为视觉映射得到的颜色,如系列色。

geo.label.normal.rich.<user defined style name>.fontStyle   |   string

[ default: 'normal' ]

文字字体的风格

可选:

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

geo.label.normal.rich.<user defined style name>.fontWeight   |   string

[ default: normal ]

文字字体的粗细

可选:

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

geo.label.normal.rich.<user defined style name>.fontFamily   |   string

[ default: 'sans-serif' ]

文字的字体系列

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

geo.label.normal.rich.<user defined style name>.fontSize   |   number

[ default: 12 ]

文字的字体大小

geo.label.normal.rich.<user defined style name>.align   |   string

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

可选:

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

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

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

geo.label.normal.rich.<user defined style name>.verticalAlign   |   string

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

可选:

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

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

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

geo.label.normal.rich.<user defined style name>.lineHeight   |   number

行高。

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

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

geo.label.normal.rich.<user defined style name>.backgroundColor   |   string, Object

[ default: 'transparent' ]

文字块背景色。

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

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

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

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

如果设置为 'auto',则为视觉映射得到的颜色,如系列色。

geo.label.normal.rich.<user defined style name>.borderColor   |   string

[ default: 'transparent' ]

文字块边框颜色。

如果设置为 'auto',则为视觉映射得到的颜色,如系列色。

geo.label.normal.rich.<user defined style name>.borderWidth   |   number

[ default: 0 ]

文字块边框宽度。

geo.label.normal.rich.<user defined style name>.borderRadius   |   number, Array

[ default: 0 ]

文字块的圆角。

geo.label.normal.rich.<user defined style name>.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。

geo.label.normal.rich.<user defined style name>.shadowColor   |   string

[ default: 'transparent' ]

文字块的背景阴影颜色。

geo.label.normal.rich.<user defined style name>.shadowBlur   |   number

[ default: 0 ]

文字块的背景阴影长度。

geo.label.normal.rich.<user defined style name>.shadowOffsetX   |   number

[ default: 0 ]

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

geo.label.normal.rich.<user defined style name>.shadowOffsetY   |   number

[ default: 0 ]

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

geo.label.normal.rich.<user defined style name>.width   |   number, string

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

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

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

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

geo.label.normal.rich.<user defined style name>.height   |   number, string

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

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

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

geo.label.normal.rich.<user defined style name>.textBorderColor   |   string

[ default: 'transparent' ]

文字本身的描边颜色。

如果设置为 'auto',则为视觉映射得到的颜色,如系列色。

geo.label.normal.rich.<user defined style name>.textBorderWidth   |   number

[ default: 0 ]

文字本身的描边宽度。

geo.label.normal.rich.<user defined style name>.textShadowColor   |   string

[ default: 'transparent' ]

文字本身的阴影颜色。

geo.label.normal.rich.<user defined style name>.textShadowBlur   |   number

[ default: 0 ]

文字本身的阴影长度。

geo.label.normal.rich.<user defined style name>.textShadowOffsetX   |   number

[ default: 0 ]

文字本身的阴影 X 偏移。

geo.label.normal.rich.<user defined style name>.textShadowOffsetY   |   number

[ default: 0 ]

文字本身的阴影 Y 偏移。

其实,在 ECharts 图表中还可以使用 emphasis 来设置 geo 组件的文本标签,该方法与 nomal 方法的使用方式相似,因此,这里就不再做过多的描述,有兴趣的朋友可以参照 normal 方法进行设置。 

ECharts地理坐标系属性介绍
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; }