- 可以利用这些项完成自己特定的画图需求,比如说节点标志替换为图标等
- 数据项设置
def add(
# 系列名称,用于 tooltip 的显示,legend 的图例筛选。
series_name: str,
# 关系图节点数据项列表,参考 `opts.GraphNode`
nodes: Sequence[Union[opts.GraphNode, ,
# 关系图节点间关系数据项列表,参考 `opts.GraphLink`
links: Sequence[Union[opts.GraphLink, ,
# 关系图节点分类的类目列表,参考 `opts.GraphCategory`
categories: Union[Sequence[Union[opts.GraphCategory, , None] = None,
# 是否选中图例。
is_selected: bool = True,
# 是否在鼠标移到节点上的时候突出显示节点以及节点的边和邻接节点。
is_focusnode: bool = True,
# 是否开启鼠标缩放和平移漫游。
is_roam: bool = True,
# 节点是否可拖拽,只在使用力引导布局的时候有用。
is_draggable: bool = False,
# 是否旋转标签,默认不旋转。
is_rotate_label: bool = False,
# 图的布局。可选:
# 'none' 不采用任何布局,使用节点中提供的 x, y 作为节点的位置。
# 'circular' 采用环形布局。
# 'force' 采用力引导布局。
layout: str = "force",
# 关系图节点标记的图形。
# ECharts 提供的标记类型包括 'circle', 'rect', 'roundRect', 'triangle',
# 'diamond', 'pin', 'arrow', 'none'
# 可以通过 'image://url' 设置为图片,其中 URL 为图片的链接,或者 dataURI。
symbol: Optional[str] = None,
# 关系图节点标记的大小
# 可以设置成诸如 10 这样单一的数字
# 也可以用数组分开表示宽和高,例如 [20, 10] 表示标记宽为20,高为10。
symbol_size: types.Numeric = 10,
# 边的两个节点之间的距离,这个距离也会受 repulsion。
# 支持设置成数组表达边长的范围,此时不同大小的值会线性映射到不同的长度。值越小则长度越长。
edge_length: Numeric = 50,
# 节点受到的向中心的引力因子。该值越大节点越往中心点靠拢。
gravity: Numeric = 0.2,
# 节点之间的斥力因子。
# 支持设置成数组表达斥力的范围,此时不同大小的值会线性映射到不同的斥力。值越大则斥力越大
repulsion: Numeric = 50,
# Graph 图节点边的 Label 配置(即在边上显示数据或标注的配置)
edge_label: types.Label = None,
# 边两端的标记类型,可以是一个数组分别指定两端,也可以是单个统一指定。
# 默认不显示标记,常见的可以设置为箭头,如下:edgeSymbol: ['circle', 'arrow']
edge_symbol: Optional[str] = None,
# 边两端的标记大小,可以是一个数组分别指定两端,也可以是单个统一指定。
edge_symbol_size: Numeric = 10,
# 标签配置项,参考 `series_options.LabelOpts`
label_opts: Union[opts.LabelOpts, dict] = opts.LabelOpts(),
# 关系边的公用线条样式。
linestyle_opts: Union[opts.LineStyleOpts, dict] = opts.LineStyleOpts(),
# 提示框组件配置项,参考 `series_options.TooltipOpts`
tooltip_opts: Union[opts.TooltipOpts, dict, None] = None,
# 图元样式配置项,参考 `series_options.ItemStyleOpts`
itemstyle_opts: Union[opts.ItemStyleOpts, dict, None] = None,
)
class GraphNode(
# 数据项名称。
name: Optional[str] None,
# 节点的初始 x 值。在不指定的时候需要指明layout属性选择布局方式。
x: Optional[Numeric] None,
# 节点的初始 y 值。在不指定的时候需要指明layout属性选择布局方式。
y: Optional[Numeric] None,
# 节点在力引导布局中是否固定。
is_fixed: bool False,
# 数据项值。
value: Union[str, Sequence, None] None,
# 数据项所在类目的 index。
category: Optional[int] None,
# 该类目节点标记的图形。
# ECharts 提供的标记类型包括 'circle', 'rect', 'roundRect', 'triangle',
# 'diamond', 'pin', 'arrow', 'none'
# 可以通过 'image://url' 设置为图片,其中 URL 为图片的链接,或者 dataURI。
symbol: Optional[str] None,
# 该类目节点标记的大小,可以设置成诸如 10 这样单一的数字,也可以用数组分开表示宽和高,
# 例如 [20, 10] 表示标记宽为 20,高为 10。
symbol_size: Union[Numeric, Sequence, None] None,
# 标签配置项,参考 `series_options.LabelOpts`
label_opts: Optional[LabelOpts] None,
)
class GraphLink(
# 边的源节点名称的字符串,也支持使用数字表示源节点的索引。
source: Union[str, int, None] = None,
# 边的目标节点名称的字符串,也支持使用数字表示源节点的索引。
target: Union[str, int, None] = None,
# 边的数值,可以在力引导布局中用于映射到边的长度。
value: Optional[Numeric] = None,
# 边两端的标记类型,可以是一个数组分别指定两端,也可以是单个统一指定。
symbol: Union[str, Sequence, None] = None,
# 边两端的标记大小,可以是一个数组分别指定两端,也可以是单个统一指定。
symbol_size: Union[Numeric, Sequence, None] = None,
# 关系边的线条样式,参考 `series_options.LineStyleOpts`
linestyle_opts: Optional[LineStyleOpts] = None,
# 标签样式,参考 `series_options.LabelOpts`
label_opts: Optional[LabelOpts] = None,
)
class GraphCategory(
# 类目名称,用于和 legend 对应以及格式化 tooltip 的内容。
name: Optional[str] = None,
# 该类目节点标记的图形。
# ECharts 提供的标记类型包括 'circle', 'rect', 'roundRect', 'triangle',
# 'diamond', 'pin', 'arrow', 'none'
# 可以通过 'image://url' 设置为图片,其中 URL 为图片的链接,或者 dataURI。
symbol: Optional[str] = None,
# 该类目节点标记的大小,可以设置成诸如 10 这样单一的数字,也可以用数组分开表示宽和高,
# 例如 [20, 10] 表示标记宽为 20,高为 10。
symbol_size: Union[Numeric, Sequence, None] = None,
# # 标签样式,参考 `series_options.LabelOpts`
label_opts: Optional[LabelOpts] = None,
)