主题概念和设计规范
The English version is working in progress.
主题简介
VChart 支持对图表主题的整体配置和复用。在概念上,VChart 主题主要由图表布局参数、图表样式以及数据色板组成。
在配置了合适主题的情况下,用户只需要在 spec 中声明图表类型、图表数据以及图表结构(比如要显示的系列和组件等),就可以渲染出符合设计规范和目标风格的图表。
在具体接口定义上,VChart 主题的配置包含以下几个部分:
- 主题信息(主题命名等)
- 图表层级样式(图表背景色、边距等)
- 全局样式(全局字体)
- 色板(包含数据色板、语义色板)
- 图元样式配置
- 系列样式配置
- 组件样式配置
在经验上,色板、图元样式配置、组件样式配置和系列样式配置是一个定义一个新主题最基本的配置。
VChart 默认主题构成
VChart 默认主题的预设可以分为以下几部分:
数据色板
数据色板是在图表中用于区分数据组的离散色板,也通常用于区分图例项。如以下两个图表中不同数据组的色板,在颜色队列中按顺序取色:


数据色板也可以是动态的、渐进式的。比如默认色板会根据数据项数量的范围来动态调整:

如以上规则,数据组不超过 10 个时,采用 10 色的色板;数据组超过 10 个时,采用 20 色的色板。如果数据组超过 20 个,则会重复应用色板颜色,从第 1 个开始。
默认数据色板的具体色值如下表所示:
序号 | 基础 10 色色板(N ≤ 10) | 完整 20 色色板(10 < N ≤ 20) |
1 |
默认
色值:
#1664FFsemiDesign
色值:
#1664FFCSS变量:
--semi-color-data-0arcoDesign
色值:
#4080FFCSS变量:
--color-data-1 |
默认
色值:
#1664FFsemiDesign
色值:
#1664FFCSS变量:
--semi-color-data-0arcoDesign
色值:
#4080FFCSS变量:
--color-data-1 |
2 |
默认
色值:
#1AC6FFsemiDesign
色值:
#1AC6FFCSS变量:
--semi-color-data-2arcoDesign
色值:
#55C5FDCSS变量:
--color-data-3 |
默认
色值:
#B2CFFFsemiDesign
色值:
#B2CFFFCSS变量:
--semi-color-data-1arcoDesign
色值:
#BEDAFFCSS变量:
--color-data-2 |
3 |
默认
色值:
#FF8A00semiDesign
色值:
#FF8A00CSS变量:
--semi-color-data-4arcoDesign
色值:
#FF7D00CSS变量:
--color-data-5 |
默认
色值:
#1AC6FFsemiDesign
色值:
#1AC6FFCSS变量:
--semi-color-data-2arcoDesign
色值:
#55C5FDCSS变量:
--color-data-3 |
4 |
默认
色值:
#3CC780semiDesign
色值:
#3CC780CSS变量:
--semi-color-data-6arcoDesign
色值:
#4CD263CSS变量:
--color-data-7 |
默认
色值:
#94EFFFsemiDesign
色值:
#94EFFFCSS变量:
--semi-color-data-3arcoDesign
色值:
#9CDCFCCSS变量:
--color-data-4 |
5 |
默认
色值:
#7442D4semiDesign
色值:
#7442D4CSS变量:
--semi-color-data-8arcoDesign
色值:
#A871E3CSS变量:
--color-data-9 |
默认
色值:
#FF8A00semiDesign
色值:
#FF8A00CSS变量:
--semi-color-data-4arcoDesign
色值:
#FF7D00CSS变量:
--color-data-5 |
6 |
默认
色值:
#FFC400semiDesign
色值:
#FFC400CSS变量:
--semi-color-data-10arcoDesign
色值:
#F7BA1ECSS变量:
--color-data-11 |
默认
色值:
#FFCE7AsemiDesign
色值:
#FFCE7ACSS变量:
--semi-color-data-5arcoDesign
色值:
#FFCF8BCSS变量:
--color-data-6 |
7 |
默认
色值:
#304D77semiDesign
色值:
#304D77CSS变量:
--semi-color-data-12arcoDesign
色值:
#9FDB1DCSS变量:
--color-data-13 |
默认
色值:
#3CC780semiDesign
色值:
#3CC780CSS变量:
--semi-color-data-6arcoDesign
色值:
#4CD263CSS变量:
--color-data-7 |
8 |
默认
色值:
#B48DEBsemiDesign
色值:
#B48DEBCSS变量:
--semi-color-data-14arcoDesign
色值:
#F979B7CSS变量:
--color-data-15 |
默认
色值:
#B9EDCDsemiDesign
色值:
#B9EDCDCSS变量:
--semi-color-data-7arcoDesign
色值:
#AFF0B5CSS变量:
--color-data-8 |
9 |
默认
色值:
#009488semiDesign
色值:
#009488CSS变量:
--semi-color-data-16arcoDesign
色值:
#0FC6C2CSS变量:
--color-data-17 |
默认
色值:
#7442D4semiDesign
色值:
#7442D4CSS变量:
--semi-color-data-8arcoDesign
色值:
#A871E3CSS变量:
--color-data-9 |
10 |
默认
色值:
#FF7DDAsemiDesign
色值:
#FF7DDACSS变量:
--semi-color-data-18arcoDesign
色值:
#E865DFCSS变量:
--color-data-19 |
默认
色值:
#DDC5FAsemiDesign
色值:
#DDC5FACSS变量:
--semi-color-data-9arcoDesign
色值:
#DDBEF6CSS变量:
--color-data-10 |
11 |
默认
色值:
#FFC400semiDesign
色值:
#FFC400CSS变量:
--semi-color-data-10arcoDesign
色值:
#F7BA1ECSS变量:
--color-data-11 | |
12 |
默认
色值:
#FAE878semiDesign
色值:
#FAE878CSS变量:
--semi-color-data-11arcoDesign
色值:
#FADC6DCSS变量:
--color-data-12 | |
13 |
默认
色值:
#304D77semiDesign
色值:
#304D77CSS变量:
--semi-color-data-12arcoDesign
色值:
#9FDB1DCSS变量:
--color-data-13 | |
14 |
默认
色值:
#8B959EsemiDesign
色值:
#8B959ECSS变量:
--semi-color-data-13arcoDesign
色值:
#C9E968CSS变量:
--color-data-14 | |
15 |
默认
色值:
#B48DEBsemiDesign
色值:
#B48DEBCSS变量:
--semi-color-data-14arcoDesign
色值:
#F979B7CSS变量:
--color-data-15 | |
16 |
默认
色值:
#EFE3FFsemiDesign
色值:
#EFE3FFCSS变量:
--semi-color-data-15arcoDesign
色值:
#FB9DC7CSS变量:
--color-data-16 | |
17 |
默认
色值:
#009488semiDesign
色值:
#009488CSS变量:
--semi-color-data-16arcoDesign
色值:
#0FC6C2CSS变量:
--color-data-17 | |
18 |
默认
色值:
#59BAA8semiDesign
色值:
#59BAA8CSS变量:
--semi-color-data-17arcoDesign
色值:
#86E8DDCSS变量:
--color-data-18 | |
19 |
默认
色值:
#FF7DDAsemiDesign
色值:
#FF7DDACSS变量:
--semi-color-data-18arcoDesign
色值:
#E865DFCSS变量:
--color-data-19 | |
20 |
默认
色值:
#FFCFEEsemiDesign
色值:
#FFCFEECSS变量:
--semi-color-data-19arcoDesign
色值:
#F7BAEFCSS变量:
--color-data-20 |
语义色板
VChart 主题允许为常用的颜色定义 token,以便在图表主题中随处使用,也就是语义色板。语义色板的形式为从 token 到色值的映射表。
为了用于描述可以复用的颜色,VChart 默认主题定义了一套语义色板,并且预设了一套 token,根据这套 token 实现了亮色主题和暗色主题。下表以 1.6.3 版本为准:
分类 | 序号 | token、描述、应用范围和默认色 值 | 实际 case(截图来自默认主题真实图表) |
图表层级样式 | 1 |
backgroundColor背景色
用于图表背景、图元描边。
默认 light
色值:
#ffffff默认 dark
色值:
#202226semiDesignLight
色值:
#ffffffCSS变量:
--semi-color-bg-0semiDesignDark
色值:
#16161aCSS变量:
--semi-color-bg-0arcoDesignLight
色值:
#ffffffCSS变量:
--color-bg-1arcoDesignDark
色值:
#17171aCSS变量:
--color-bg-1 |
图表背景色
![]() ![]() point 图元描边颜色
![]() ![]() 数据标签描边颜色
![]() ![]() 播放器滑块描边颜色
![]() ![]() |
2 |
borderColor图表边框色
用于图表边框(图表内暂时没有实际应用,仅有指导意义)。
默认 light
色值:
#e3e5e8默认 dark
色值:
#404349semiDesignLight
色值:
rgba(28,31,35,0.08)CSS变量:
--semi-color-bordersemiDesignDark
色值:
rgba(255,255,255,0.08)CSS变量:
--semi-color-borderarcoDesignLight
色值:
rgba(229,230,235,1)CSS变量:
--color-borderarcoDesignDark
色值:
#333335CSS变量:
--color-border |
图表边框色
![]() ![]() | |
公共 | 3 |
shadowColor默认阴影颜色
用于浮层、滑块等带高度属性的图元阴影。
默认 light
色值:
rgba(33,37,44,0.1)默认 dark
色值:
rgba(0,0,0,0.1)semiDesignLight
色值:
rgba(0,0,0,0.1)semiDesignDark
色值:
rgba(0,0,0,0.25)arcoDesignLight
色值:
rgba(0,0,0,0.1)arcoDesignDark
色值:
rgba(0,0,0,0.1) |
提示信息阴影颜色
![]() ![]() poptip 阴影颜色
![]() ![]() 颜色图例滑块阴影颜色
![]() ![]() |
4 |
hoverBackgroundColor鼠标 Hover 背景颜色
用于元素在鼠标 hover 状态的背景颜色。
默认 light
色值:
#f1f2f5默认 dark
色值:
#404349semiDesignLight
色值:
rgba(46,50,56,0.05)CSS变量:
--semi-color-fill-0semiDesignDark
色值:
rgba(255,255,255,0.12)CSS变量:
--semi-color-fill-0arcoDesignLight
色值:
rgba(229,230,235,1)CSS变量:
--color-secondary-hoverarcoDesignDark
色值:
rgba(197,197,197,0.16)CSS变量:
--color-secondary-hover |
图例项 hover 背景色
![]() ![]() | |
5 |
sliderRailColor滑块类组件背景条填充颜色
用于滑块类组件背景条的填充颜色。
默认 light
色值:
#f1f3f4默认 dark
色值:
#404349semiDesignLight
色值:
rgba(46,50,56,0.05)CSS变量:
--semi-color-fill-0semiDesignDark
色值:
rgba(255,255,255,0.12)CSS变量:
--semi-color-fill-0arcoDesignLight
色值:
rgba(229,230,235,1)CSS变量:
--color-fill-3arcoDesignDark
色值:
hsla(0,0%,100%,0.12)CSS变量:
--color-fill-3 |
缩略轴背景区域颜色
![]() ![]() 播放器未播放轨道颜色
![]() ![]() 颜色图例轨道颜色
![]() ![]() 尺寸图例轨道颜色
![]() ![]() | |
6 |
sliderHandleColor滑块类组件滑块填充颜色
|



















