go-chart/axis.go

42 lines
1.2 KiB
Go
Raw Normal View History

2016-07-10 10:11:47 +02:00
package chart
2016-07-30 18:12:03 +02:00
type tickPosition int
const (
// TickPositionUnset means to use the default tick position.
TickPositionUnset tickPosition = 0
// TickPositionBetweenTicks draws the labels for a tick between the previous and current tick.
TickPositionBetweenTicks tickPosition = 1
// TickPositionUnderTick draws the tick below the tick.
TickPositionUnderTick tickPosition = 2
)
2016-07-10 10:11:47 +02:00
// YAxisType is a type of y-axis; it can either be primary or secondary.
2016-07-30 18:12:03 +02:00
type yAxisType int
2016-07-10 10:11:47 +02:00
const (
// YAxisPrimary is the primary axis.
2016-07-30 18:12:03 +02:00
YAxisPrimary yAxisType = 0
2016-07-10 10:11:47 +02:00
// YAxisSecondary is the secondary axis.
2016-07-30 18:12:03 +02:00
YAxisSecondary yAxisType = 1
2016-07-10 10:11:47 +02:00
)
// Axis is a chart feature detailing what values happen where.
type Axis interface {
GetName() string
GetStyle() Style
GetTicks() []Tick
GenerateTicks(r Renderer, ra Range, vf ValueFormatter) []Tick
// GetGridLines returns the gridlines for the axis.
2016-07-13 04:14:14 +02:00
GetGridLines(ticks []Tick) []GridLine
// Measure should return an absolute box for the axis.
// This is used when auto-fitting the canvas to the background.
Measure(r Renderer, canvasBox Box, ra Range, style Style, ticks []Tick) Box
// Render renders the axis.
Render(r Renderer, canvasBox Box, ra Range, style Style, ticks []Tick)
2016-07-10 10:11:47 +02:00
}