MujicaUI

Charts II · #131

ChordDiagram 浅色主题渲染快照
浅色 · 渲染快照
ChordDiagram 深色主题渲染快照
深色 · 渲染快照

131 ChordDiagram 弦图

用途

以组弧和弦带展示关系矩阵,悬停或键盘读数组时高亮相关连线。

最小示例

names := []string{"Nave", "Choir", "Crypt"}
matrix := [][]float64{{0, 5, 2}, {4, 0, 1}, {1, 2, 0}}
view := func(c *ui.Context) {
	core.Use(c, core.Settings{})
	chart.ChordDiagram(c, names, matrix, chart.ChordDiagramOptions{Frame: chart.ChartFrame{Label: "Paths"}})
}
ui.Render(view, 400, 300, 1)

参数

names []string 为唯一非空组名;matrix [][]float64 为同阶方阵,数值须有限且非负。Frame 控制名称、尺寸和加载状态。Format 自定义关系数值。

状态

默认、组高亮、弦高亮、加载、错误、空矩阵、祖先禁用;对角线值形成自身关系。

事件

Point 先枚举组,再枚举关系;Changed() 表示读数变化;Retried() 表示重试。

键盘操作

Tab 聚焦;方向键依次读取组的流入流出与关系值;Home/End 首尾;Escape 清除。

限制

高密度矩阵按绘图区半径抽样绘制弦带,当前键盘关系保留;布局仅在外层 matrix 切片身份变化时计算。更新数据需替换外层切片。组弧标签在有足够空间时展示,完整名称始终包含在键盘读数中。