设置UI引擎前端页面条形图/柱状图组件属性
条形图和柱状图是常用的数据可视化工具,用于直观展示数据分布、对比分析等。该组件支持灵活配置柱体样式、坐标轴、图例及文本展示,可结合实时数据实现动态渲染,助力用户快速捕捉数据规律与异常信息。
前提条件
已在当前页面添加“条形图”或“柱状图”组件,具体操作请参见为UI引擎前端页面添加物料组件。
配置入口
- 在页面设计器的中心画布区,单击选中“条形图”或“柱状图”组件。
- 在右侧设置面板中,单击
,即可展开“属性”设置面板。
基础属性
|
属性名称 |
说明 |
是否支持变量绑定 |
|---|---|---|
|
图表数据 |
配置图表需展示的核心数据,支持绑定实时数据源(如设备运行参数、生产统计数据),数据格式需符合组件解析要求,确保柱体正常渲染。 |
是 |
|
柱体方向 |
设置柱体展示方向,分为“水平方向”(条形图)和“垂直方向”(柱状图),默认值为“水平方向”。 通过变量绑定控制时,状态变量值仅支持“vertical”(垂直)和“horizontal”(水平)两种,可根据数据维度多少选择(维度多建议水平方向,避免标签重叠)。 |
是 |
|
颜色 |
配置柱体颜色,值为色值数组。 当同一X轴坐标存在多个柱体(如多设备同一指标对比)时,将循环取用数组颜色,单个柱体仅取用第一个色值。可按数据类型(如正常/异常数据)配置差异化颜色,提升辨识度。 |
是 |
|
图表内边距值 |
设置图表组件内边距,值为数值数组,顺序对应“[上, 右, 下, 左]”,单位为像素(px)。可根据页面布局调整,避免图表内容与容器边缘、其他组件重叠。 |
是 |
|
柱体样式 |
自定义柱体细节样式,其值为对象类型。支持以下配置项:
|
是 |
|
柱体文本 |
配置柱体上的文本展示,值为对象(作用于所有柱体)或对象数组(按柱体名称依次配置),支持以下配置项:
|
是 |
|
图例配置 |
设置图表图例的样式与交互功能,值为对象类型,具体配置规则请参见图例配置。可通过图例快速筛选数据系列(如隐藏无需关注的设备数据)。 |
是 |
|
配置x轴 |
自定义X轴参数,值为对象类型,包括数据关联、标签样式、轴线设置等,具体配置规则请参见X轴配置。 |
是 |
|
配置y轴 |
自定义Y轴参数,值为对象(统一配置)或对象数组(分别配置多是轴),包括数值范围、单位、刻度间隔等,具体规则请参见Y轴配置。 |
是 |
|
图表容器宽度 |
设置图表容器宽度,支持像素单位(如500px)或视口宽度单位(如50vw)。终端屏幕尺寸多样,建议使用“vw”单位,确保自适应展示。 |
是 |
|
图表容器高度 |
设置图表容器高度,支持像素单位(如500px)或视口高度单位(如50vh),需结合数据量调整,避免柱体拉伸变形或显示不全。 |
是 |
|
显示加载状态 |
控制是否启用加载状态。 |
是 |
|
暂无数据 |
控制无数据时是否显示占位提示。 |
是 |
图例配置
图例用于标识图表中不同数据系列(如不同设备、不同工艺指标),支持样式自定义与交互控制,适配数据筛选与快速识别需求,配置值为对象类型。具体参数如下:
|
属性名称 |
类型 |
说明 |
|---|---|---|
|
show |
boolean |
控制图例是否显示。数据系列单一(如单设备多时段数据)时可隐藏,节省页面空间。 |
|
itemGap |
number |
设置图例项之间的间隔,单位为像素,避免图例密集重叠,建议根据图例数量调整。 |
|
width |
number |
图例整体宽度,单位为像素,用于固定图例区域大小,适配页面布局。 |
|
height |
number |
图例整体高度,单位为像素,与width配合控制图例区域尺寸。 |
|
position |
object<{ top: number | string, left: number | string, right: number | string, bottom: number | string }> |
配置图例位置,值支持像素(如20)、百分比(如“20%”)或方位词(top/middle/bottom、left/center/right)。 |
|
orient |
'horizontal' | 'vertical' |
设置图例的方向。
|
|
reverseEvent |
boolean |
控制图例是否支持双击反选(500ms内连续单击视为反选)。 单击仅切换自身状态,不影响其他图例。双击反选所有图例状态。 |
|
selectedMode |
boolean |
控制是否可通过单击图例改变对应数据系列的显示状态。 |
|
icon |
enum |
设置图例图标样式(定义“data”属性后此属性失效)。 可选值:
|
|
data |
Array<{ icon: string, iconChange: string, name: string }> |
按数据系列自定义图例图标,优先级高于“icon”属性。数组每项对应一个图例:
|
|
itemHeight |
number |
图例图标的高度,单位为像素(px),与“itemWidth”配合调整图标大小。 |
|
itemWidth |
number |
图例图标的宽度,单位为像素(px),避免图标过大或过小影响视觉效果。 |
|
formatter |
Function |
自定义图例文本显示格式,仅支持通过状态变量绑定实现,不支持直接在配置面板中写函数。 |
|
textStyle |
TextStyle |
图例文本样式,具体配置请参见*TextStyle配置项。 |
|
tooltip |
object<{ show: boolean }> |
控制图例是否显示悬浮提示框。 |
X轴配置
X轴用于展示数据的分类维度(如时间、设备编号、工艺环节),配置值为对象类型。具体参数如下:
|
属性名称 |
类型 |
说明 |
|---|---|---|
|
data |
string |
指定图表数据中作为X轴的“key”值,需与数据源字段严格对应,确保数据正常渲染(如数据中“deviceId”、“time”字段)。 |
|
name |
string |
设置X轴文本名称,显示在X轴右侧,用于说明维度类型(如“设备编号”)。 |
|
line |
object<LineConfig> |
控制X轴轴线的显示与样式,具体配置请参见表1。 |
|
interval |
number |
设置X轴标签间隔,默认自适应显示。 值大于0时,按间隔显示标签(如“interval=1”表示隔一个标签显示),X轴标签过多(如多时段数据)时可设置,避免标签重叠。 |
|
fullGrid |
boolean |
控制图表是否顶格到X轴左右两边,默认为“false”。 |
|
show |
boolean |
控制是否显示X轴。 设置为“false”时,除“data”属性外其他X轴配置均失效。 |
|
labelRotate |
string | false |
设置X轴标签旋转角度,取值范围-90°~90°,值为false或0时不旋转。标签文字较长(如设备全称)时,可设置为-45°或45°,避免重叠。 |
|
ellipsis |
object<{ overflow: 'none' | 'truncate' | 'break' | 'breakAll'; width: number; }> |
控制X轴标签过长时的展示方式,需配置width(宽度,单位px)才生效。
|
|
nameLocation |
'end' | 'center' ('middle') | 'start' |
设置X轴名称(name)的位置,默认为“end”(右侧)。可根据布局调整为“center”(中间)或“start”(左侧)。 |
|
nameTextStyle |
TextStyle |
X轴名称文本样式,具体配置请参见*TextStyle配置项。 |
|
属性名称 |
类型 |
说明 |
|---|---|---|
|
show |
boolean |
是否显示X轴轴线。
|
|
lineStyle.color |
string |
轴线颜色,格式为十六进制色值(如“#000000”)。建议选用与背景对比明显的颜色,提升辨识度。 |
|
lineStyle.width |
number |
轴线宽度,数值类型(如5,单位px),避免过细导致显示不清晰。 |
|
lineStyle.type |
string |
轴线样式,可选值:“solid”(实线,默认)、“dotted”(点线)、“dashed”(虚线)。 |
|
lineStyle.dashOffset |
number |
虚线偏移量。仅在“type”为“dashed”时生效,用于微调虚线段的起始位置。 |
|
lineStyle.cap |
string |
线帽样式,用于定义轴线末端的绘制方式。可选值:
|
|
lineStyle.shadowBlur |
number |
阴影模糊半径。数值越大,阴影越模糊、柔和。需与“shadowColor”、“shadowOffsetX”、“shadowOffsetY”属性配合使用。 |
|
lineStyle.shadowColor |
string |
图形阴影的颜色。 |
|
lineStyle.shadowOffsetX |
number |
阴影水平方向上的偏移距离。 |
|
lineStyle.shadowOffsetY |
number |
阴影垂直方向上的偏移距离。 |
|
lineStyle.opacity |
number |
轴线的透明度,取值范围为0-1的小数。
|
X轴配置完整示例代码:
{
data: 'Month', // 绑定数据中“Month”字段作为X轴维度
name: 'Utils', // X轴名称
line: {
show: true, // 显示轴线
lineStyle: {
color: 'red', // 轴线颜色
type: 'dashed', // 轴线样式为虚线
width: 2 // 轴线宽度
}
},
interval: 2, // 每间隔2个标签显示
fullGrid: true, // 图表顶格X轴两侧
labelRotate: 45, // 标签旋转45°
ellipsis: {
overflow: 'truncate', // 过长截断显示省略号
labelWidth: 20 // 标签宽度限制为20px
},
nameLocation: 'end', // 名称显示在X轴右侧
nameTextStyle: {
fontSize: 12, // 字体大小12px
color: '#4e4e4e' // 字体颜色
}
}
Y轴配置
Y轴用于展示数据的量化指标(如产量、能耗、压力),配置值为对象(统一配置)或对象数组(多Y轴分别配置)。具体参数如下:
|
属性名称 |
类型 |
说明 |
|---|---|---|
|
max |
number |
自定义Y轴最大值,可按指标上限设置(如能耗上限1000),使数据对比更直观。 |
|
min |
number |
自定义Y轴最小值,指标无负数值时可设为0,避免数据展示失真。 |
|
interval |
number |
自定义Y轴数值刻度间隔,设置后“splitNumber”属性失效,可按指标精度设置(如能耗精度10,间隔设为100)。 |
|
position |
string |
Y轴位置,可选值:“left”(左侧,默认)、“right”(右侧)。 多Y轴配置时可分别放置两侧,避免重叠。 |
|
name |
string |
Y轴名称,用于说明量化指标类型(如“能耗(kWh)”)。 |
|
unit |
string |
自定义Y轴刻度单位(如“kWh”、“MPa”)。 |
|
minInterval |
number |
Y轴最小刻度间隔,确保刻度精度符合业务数据需求(如压力数据精度0.1,最小间隔设为0.1)。 |
|
maxInterval |
number |
Y轴最大刻度间隔,避免刻度过少导致数据对比不清晰。 |
|
dataName |
Array<string> |
仅多Y轴(配置值为数组)时生效,指定哪些数据系列使用当前Y轴配置,未包含的数据系列按第一个Y轴配置渲染,用于区分不同指标数据(如能耗、产量分别对应不同Y轴)。 |
|
nameTextStyle |
TextStyle |
Y轴名称文本样式,具体配置请参见*TextStyle配置项。 |
|
offset |
number |
Y轴相对于默认位置的偏移量,单位为像素(px)。 多Y轴时用于微调位置,避免重叠。 |
|
splitNumber |
number |
Y轴分割线数量,设置“interval”属性后此属性失效,默认自适应,可根据数据范围调整,确保刻度清晰。 |
|
labelTextStyle |
object |
Y轴刻度文本样式。具体配置请参见*TextStyle配置项。 |
|
splitLine |
object |
Y轴刻度线样式,可配置显示状态、颜色、宽度等。 |
Y轴配置示例:
[
{
"name": "value",
"unit": "",
"nameTextStyle": {
"color": "blue",
"fontSize": 24,
"padding": [
0,
40,
-20,
0
]
},
"interval": 2,
"labelTextStyle": {
"color": "blue"
}
}
]
*TextStyle配置项
图表中所有文本样式(如labelTextStyle、nameTextStyle)均采用此配置项,支持精细化自定义,确保界面文本风格统一,具体参数如下:
|
属性名称 |
类型 |
说明 |
|---|---|---|
|
color |
color |
文本颜色,支持十六进制、颜色单词、RGB字符串。 |
|
fontStyle |
string |
字体风格,可选正常、斜体等。 |
|
fontWeight |
string |
字体粗细,可选正常、加粗等,标题文本可设为加粗,突出层级。 |
|
fontFamily |
string |
字体体系(如“Microsoft YaHei”)。 |
|
fontSize |
number |
字体大小,单位为像素,根据图表尺寸调整,避免过小导致看不清。 |
|
align |
string |
文本水平对齐方式,可选:left(左)、center(中)、right(右),默认自适应。 |
|
verticalAlign |
string |
文本垂直对齐方式,可选:top(上)、middle(中)、bottom(下),默认自适应。 |
|
lineHeight |
number |
文本行高,用于多行文本换行时调整间距,避免拥挤。 |
|
backgroundColor |
color |
文本块背景颜色,工业场景一般不开启,避免干扰图表数据展示。 |
|
borderColor |
color |
文本块边框颜色,需配合“borderWidth”使用。 |
|
borderWidth |
number |
文本块边框宽度,单位为像素,默认0(无边框)。 |
|
borderType |
string |
文本块边框样式,可选solid(实线)、dashed(虚线)、dotted(点线)。 |
|
borderDashOffset |
number |
虚线边框偏移量,仅“borderType”为“dashed”时有效。 |
|
borderRadius |
number | number[] |
文本块圆角,单数值为统一圆角,数组按“[上, 右, 下, 左]”设置。 |
|
padding |
number | number[] |
文本块内边距,单数值为统一边距,数组按“[上, 右, 下, 左]”设置,避免文本与边框重叠。 |
|
shadowColor |
color |
文本块阴影颜色,配合“shadowBlur”、“shadowOffsetX/Y”使用。 |
|
shadowBlur |
number |
文本块阴影模糊程度,配合其他阴影属性使用。 |
|
shadowOffsetX |
number |
文本块阴影水平偏移距离。 |
|
shadowOffsetY |
number |
文本块阴影垂直偏移距离。 |
|
width |
number |
文本显示宽度,单位为像素,配合“overflow”属性使用。 |
|
height |
number |
文本显示高度,单位为像素,用于固定文本块尺寸。 |
|
textBorderColor |
color |
文字本身描边颜色,需配合textBorderWidth使用,提升文本在复杂背景下的辨识度。 |
|
textBorderWidth |
number |
文字本身描边宽度,单位为像素,避免过宽导致文字变形。 |
|
textBorderType |
string |
文字描边样式,可选:solid、dashed、dotted。 |
|
textBorderDashOffset |
number |
文字虚线描边偏移量,仅“textBorderType”为“dashed”时有效。 |
|
textShadowColor |
color |
文字本身阴影颜色,配合其他文字阴影属性使用。 |
|
textShadowBlur |
number |
文字阴影模糊程度。 |
|
textShadowOffsetX |
number |
文字阴影水平偏移距离。 |
|
textShadowOffsetY |
number |
文字阴影垂直偏移距离。 |
|
overflow |
string |
文字超出宽度时的处理方式,需配置“width”生效:truncate(截断)、break(换行)、breakAll(强制换行)。 |
|
ellipsis |
string |
“overflow”为“truncate”时,配置末尾显示的文本,默认为“...”。 |
其他
如下属性适用于UI引擎所有组件,用于精细化控制。
|
属性名称 |
说明 |
是否支持变量绑定 |
|---|---|---|
|
元素id值 |
对应HTML标签的“id”属性,同一页面内必须唯一。 |
是 |
|
样式类 |
对应HTML标签的“class”属性,为空格分隔的类名列表,用于自定义组件样式。默认为“component-base-style”。 |
是 |
|
ref引用类 |
对应Vue的“ref”属性,用于注册模板引用以访问组件实例方法。 如果为“数据源表单”组件,会自动填充默认值。 |
是 |