MujicaUI

Charts II · #121

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

121 ChartLegend 图例

用途

展示序列名称与形状;点击或键盘切换序列显隐,支持横纵布局和折叠。

最小示例

hidden := map[string]bool{}
view := func(c *ui.Context) {
	core.Use(c, core.Settings{})
	k := core.Tokens(c)
	items := []chart.ChartLegendItem{{Name: "Pews", Color: k.Info}, {Name: "Candles", Color: k.Success, Shape: 1}}
	chart.ChartLegend(c, &hidden, items, chart.ChartLegendOptions{MaxItems: 1})
}
ui.Render(view, 400, 200, 1)

参数

hidden *map[string]bool:名称映射到隐藏状态,nil 为静态图例。items []ChartLegendItem:唯一非空 Name、Color、Shape(0–4)。Vertical 默认 false;MaxItems 默认 0,显示全部,负值 panic。

状态

可见项显示形状,隐藏项显示空框与删除线;支持祖先禁用。折叠后显示展开按钮。

事件

Toggled() 返回本帧切换的序列名称和是否发生事件。

键盘操作

Tab 进入图例;方向键在项之间移动;Space 切换显隐;展开按钮支持 Enter 和 Space。

限制

调用方依据 hidden 控制数据序列。图例颜色来自调用方,应使用主题色;形状提供颜色之外的识别。