Semi DV 提供完整的主题配置流程,既保持颜色、字体、圆角、阴影、布局等在视觉语言上的统一连贯,又能满足业务和品牌多样化的视觉需求。通过灵活的配置选项,用户可以创建与产品定位和品牌风格一致的可视化图表。
你可以前往 Semi 设计系统管理站点 (又称DSM) 创造一套符合你的需求的图表主题风格。需要额外注意的是,Semi DV的DSM系统独立于Semi基础组件DSM之外。两个子系统各自独立运行。主要的功能亮点如下:
访问 Semi DSM, 左上角选中“数据可视化”

并点击右上角 创建设计系统按钮

输入主题名称和描述

本平台设计系统的使用和消费的形式为公网 NPM 包,公开可检索,在自定义配置项(主题名称、主题描述等)中请勿携带个人隐私信息。
可选择亮色模式或暗色模式作为主题的主要模式,这个选项可以在配置面板中随时更改

关联后,数据可视化样式(主题色、圆角等)会和已有UI样式保持一致。后续可以单独编辑数据可视化样式

简易模式通过只配置主题色、圆角、间距、粗细等核心配置,快捷定制图表大部分元素外观。

点击拾色器配置主题色,DSM 会根据主题色自动生成两套色板,一套分类色板,一套顺序色板。其中,分类色板又有两种方案。

点击在色板之间进行切换。

分类色板:用于描述不同类别的数据,这些数据通常不需要用颜色表示其关联性,例如不同产品的售卖数量。
顺序色板:用于描述数据的连续性或顺序性,通常根据颜色的亮度、色调或两者的组合,来表示数据的大小或顺序,例如地图上的人口密度。
高级模式允许精确对图表的特定元素和颜色进行调整,适合高度定制化的图表主题需求。

点击左侧一级菜单中的 Token,并点击二级菜单切换到 颜色

色板分为分类色板和顺序色板,使用场景与简单模式中的分类色板与顺序色板相同。点击设为默认来切换分类色板与顺序色板。

点击拾色器设置主色,所有的色板都会重新计算颜色,谨慎操作
点击下拉框,切换分类色板方案
高级模式允许按照功能区定义颜色,定义的颜色不会直接作用于表格,但可在元素定制面板中选中定义的颜色,当该颜色修改时,所有用到该颜色的地方均会自动同步。

点击二级菜单的字体面板,进入全局字体配置页。配置的字体可在元素和图表一级页面在精确修改图元属性时进行消费

点击右侧字体设置属性


点击二级菜单的圆角面板,进入全局圆角配置页。配置的圆角可在元素和图表一级页面在精确修改图元属性时进行消费
点击右侧圆角设置属性


点击二级菜单的间距面板,进入全局间距配置页。配置的间距可在元素和图表一级页面在精确修改图元属性时进行消费
点击右侧间距设置属性


点击二级菜单的线段面板,进入全局线段配置页。配置的线段可在元素和图表一级页面在精确修改图元属性时进行消费
点击右侧线段设置属性,可设置线段粗细与线段虚线间距



点击二级菜单的动画面板,进入全局动画配置页。配置的动画可在元素和图表一级页面在精确修改图元属性时进行消费
点击右侧动画设置属性,可设置动画时长与动画延迟


可配置的元素包括图表的标题、直角坐标系( X 轴及 Y 轴)、极坐标系(半径轴及角度轴)、分散图例、提示信息、十字准星。
支持配置标题及副标题的可见性、字体以及颜色。

支持配置 X 轴及 Y 轴的标题、标签、线、轴刻度、网格线。

支持引用直角坐标系设置,开启引用后,半径轴将使用 X 轴的配置,角度轴将使用 Y 轴的配置。
也支持单独设置半径轴及角度轴设置。具体配置项同直角坐标系。

支持配置分散图例的标题,图例项的文本、数值、间距、以及图例位置,鼠标悬停态,未选中图例的透明度。

支持配置背景面板、标题、数据项(文本/数值)、各项间距以及交互动画。

支持配置十字准星的线形辅助线、矩形辅助线的线、矩形及标签。

支持不同图表的配置。包括柱状图、折线图、面积图、饼图、漏斗图。
对于不同类型图表,显示区域展示该类型图表的多种形态,实时显示配置效果。
支持配置柱状图的柱样式、标签、图例及动效。

支持配置线、数据点、标签、图例以及动效

支持配置线、面积、数据点、标签、图例以及动效

支持配置扇形、标签、图例和动效

支持配置漏斗图的漏斗层、转化层、漏斗层内标签、转化层内标签、外标签、图例及动效。

当我们完成了所有 Token 样式配置后,就可以通过 Semi DSM 将配置的主题进行发布了。 主题将会被发布至 npm 上,发布后,前端项目可下载接入并应用,Figma Plugin 可以进行下发同步配置。
在发布之前,我们需要填写以下信息
@semi-bot/semi-theme-vchart- 前缀开头,你可以定制后面的名称(不允许与已有主题重复)x.y.z (均为数字)格式,建议遵循 Semver 规范
完成上述信息填写后,我们可以正式进行发布主题包,发布完成后,就可以直接在项目中一键接入使用了。
// vchart 亮色
import vchartLight from "@ies/semi-vchart-theme-test/light.json"
// vchart 暗色
import vchartDark from "@ies/semi-vchart-theme-test/dark.json"
主题包也内置了 导出的 Echarts 主题,但 Echarts 不能完全支持主题中的所有配置,不推荐使用。
在 vcharts 项目中注册你需要的主题
import VChart from '@visactor/vchart';
VChart.ThemeManager.registerTheme("myLightTheme", vchartLight);
// apply a theme
VChart.ThemeManager.setCurrentTheme('myLightTheme');
其它问题可以参考 Vcharts 主题消费文档
关于 Echarts 使用主题请参考 Echarts 文档