dont start at zero
parent
bf0c27efca
commit
3aa9f635be
|
|
@ -30,7 +30,7 @@ type Data struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
func newConfig() (Config, error) {
|
func newConfig() (Config, error) {
|
||||||
dataPoints := envOr("DATA_POINTS", `[[1, 1], [1, 2], [2, 1], [2, 1], [4, 3]]`)
|
dataPoints := envOr("DATA_POINTS", `[[11, 21], [11, 22], [12, 21], [12, 21], [14, 23]]`)
|
||||||
dataLabels := envOr("DATA_LABELS", ``)
|
dataLabels := envOr("DATA_LABELS", ``)
|
||||||
dataWeightRange := envOr("DATA_WEIGHT_RANGE", `20`)
|
dataWeightRange := envOr("DATA_WEIGHT_RANGE", `20`)
|
||||||
dataWeightFloor := envOr("DATA_WEIGHT_FLOOR", `12`)
|
dataWeightFloor := envOr("DATA_WEIGHT_FLOOR", `12`)
|
||||||
|
|
|
||||||
35
main.go
35
main.go
|
|
@ -33,6 +33,37 @@ func run(ctx context.Context) error {
|
||||||
}
|
}
|
||||||
log.Printf("%s: (%s, %s) = %v", config.Data.Title, x, y, data)
|
log.Printf("%s: (%s, %s) = %v", config.Data.Title, x, y, data)
|
||||||
|
|
||||||
|
minX, maxX := data[0].Value.([]float64)[0], data[0].Value.([]float64)[0]
|
||||||
|
minY, maxY := data[0].Value.([]float64)[1], data[0].Value.([]float64)[1]
|
||||||
|
for _, datum := range data {
|
||||||
|
x := datum.Value.([]float64)[0]
|
||||||
|
if x < minX {
|
||||||
|
minX = x
|
||||||
|
} else if x > maxX {
|
||||||
|
maxX = x
|
||||||
|
}
|
||||||
|
y := datum.Value.([]float64)[1]
|
||||||
|
if y < minY {
|
||||||
|
minY = y
|
||||||
|
} else if y > maxY {
|
||||||
|
maxY = y
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if 0 <= minX && minX <= 1 {
|
||||||
|
minX = 0
|
||||||
|
} else if 1 <= minX {
|
||||||
|
minX -= 1
|
||||||
|
maxX += 1
|
||||||
|
}
|
||||||
|
if 0 <= minY && minY <= 1 {
|
||||||
|
minY = 0
|
||||||
|
} else if 1 <= minY {
|
||||||
|
minY -= 1
|
||||||
|
maxY += 1
|
||||||
|
}
|
||||||
|
log.Printf("x=[%v, %v] y=[%v, %v]", minX, maxX, minY, maxY)
|
||||||
|
|
||||||
scatter := charts.NewScatter()
|
scatter := charts.NewScatter()
|
||||||
scatter.SetGlobalOptions(
|
scatter.SetGlobalOptions(
|
||||||
charts.WithTitleOpts(opts.Title{
|
charts.WithTitleOpts(opts.Title{
|
||||||
|
|
@ -48,11 +79,15 @@ func run(ctx context.Context) error {
|
||||||
Name: x,
|
Name: x,
|
||||||
NameLocation: "middle",
|
NameLocation: "middle",
|
||||||
NameGap: config.Data.Weight.Floor + config.Data.Weight.Range,
|
NameGap: config.Data.Weight.Floor + config.Data.Weight.Range,
|
||||||
|
Min: minX,
|
||||||
|
Max: maxX,
|
||||||
}),
|
}),
|
||||||
charts.WithYAxisOpts(opts.YAxis{
|
charts.WithYAxisOpts(opts.YAxis{
|
||||||
Name: y,
|
Name: y,
|
||||||
NameLocation: "middle",
|
NameLocation: "middle",
|
||||||
NameGap: config.Data.Weight.Floor + config.Data.Weight.Range,
|
NameGap: config.Data.Weight.Floor + config.Data.Weight.Range,
|
||||||
|
Min: minY,
|
||||||
|
Max: maxY,
|
||||||
}),
|
}),
|
||||||
)
|
)
|
||||||
scatter.AddSeries(y, data)
|
scatter.AddSeries(y, data)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue