MujicaUI

Charts II · #125

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

125 ChartGrid 图表网格

用途

按坐标轴主刻度和次刻度绘制对齐设备像素的网格线。

最小示例

view := func(c *ui.Context) {
	core.Use(c, core.Settings{})
	x := chart.ChartAxis(c, chart.ChartAxisOptions{Max: 10})
	y := chart.ChartAxis(c, chart.ChartAxisOptions{Side: chart.SideLeft, Max: 100})
	grid := chart.ChartGrid(c, chart.ChartGridOptions{X: &x, Y: &y, Minor: 2})
	ui.Box(c).Fill().Draw(func(p *ui.Painter, r ui.Rect) {
		plot := ui.Rect{X: r.X + 60, Y: r.Y + 20, W: r.W - 80, H: r.H - 60}
		grid.Draw(p, plot)
		x.Draw(p, plot)
		y.Draw(p, plot)
	})
}
ui.Render(view, 400, 300, 1)

参数

X, Y *ChartAxisPart 至少一条轴;Minor 默认 0,正整数表示每个主刻度间隔的等分数。类别轴的 Minor 必须为 0。负值 panic。

状态

展示部件;主网格使用 Border,次网格使用较淡的 Border。

事件

返回 ChartGridPart,由 Draw(p, plot) 绘制。

键盘操作

所属图表的键盘操作保持生效;网格随图表展示。

限制

对数轴次刻度按对数距离等分。大范围刻度按绘图像素密度抽样绘制。