标签的位置
对于折线图、柱状图、散点图等,均可以使用 label 来设置标签。标签的相对于图形元素的位置,一般使用 、 来配置。
例如:
注意:position 在不同的图中可取值有所不同。distance 并不是在每个图中都支持。详情请参见 option 文档。
标签的旋转
某些图中,为了能有足够长的空间来显示标签,需要对标签进行旋转。例如:
这种场景下,可以结合 和 来调整标签位置。
注意,逻辑是,先使用 align 和 verticalAlign 定位,再旋转。
文本片段的排版和对齐
关于排版方式,每个文本片段,可以想象成 CSS 中的 inline-block,在文档流中按行放置。
每个文本片段的内容盒尺寸(content box size),默认是根据文字大小决定的。但是,也可以设置 width、height 来强制指定,虽然一般不会这么做(参见下文)。文本片段的边框盒尺寸(border box size),由上述本身尺寸,加上文本片段的 padding 来得到。
只有 '\n' 是换行符,能导致换行。
一行内,会有多个文本片段。每行的实际高度,由 lineHeight 最大的文本片段决定。文本片段的 lineHeight 可直接在 rich 中指定,也可以在 rich 的父层级中统一指定而采用到 rich 的所有项中,如果都不指定,则取文本片段的边框盒尺寸(border box size)。
在一行的 lineHeight 被决定后,一行内,文本片段的竖直位置,由文本片段的 verticalAlign 来指定(这里和 CSS 中的规则稍有不同):
'bottom':文本片段的盒的底边贴住行底。
'top':文本片段的盒的顶边贴住行顶。
'middle':居行中。
文本块的宽度,可以直接由文本块的 width 指定,否则,由最长的行决定。宽度决定后,在一行中进行文本片段的放置。文本片段的 align 决定了文本片段在行中的水平位置:
首先,从左向右连续紧靠放置 align 为 'left' 的文本片段盒。
然后,从右向左连续紧靠放置 align 为 'right' 的文本片段盒。
最后,剩余的没处理的文本片段盒,紧贴着,在中间剩余的区域中居中放置。
关于文字在文本片段盒中的位置:
如果 align 为 'center',则文字在文本片段盒中是居中的。
如果 align 为 'left',则文字在文本片段盒中是居左的。
如果 align 为 'right',则文字在文本片段盒中是居右的。
例如: