fix title

main
bel 2024-02-14 10:08:43 -07:00
parent ba824be243
commit bf0c27efca
2 changed files with 28 additions and 26 deletions

View File

@ -32,8 +32,8 @@ 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", `[[1, 1], [1, 2], [2, 1], [2, 1], [4, 3]]`)
dataLabels := envOr("DATA_LABELS", ``) dataLabels := envOr("DATA_LABELS", ``)
dataWeightFloor := envOr("DATA_WEIGHT_FLOOR", `12`)
dataWeightRange := envOr("DATA_WEIGHT_RANGE", `20`) dataWeightRange := envOr("DATA_WEIGHT_RANGE", `20`)
dataWeightFloor := envOr("DATA_WEIGHT_FLOOR", `12`)
dataTitle := envOr("DATA_TITLE", ``) dataTitle := envOr("DATA_TITLE", ``)
dataSubtitle := envOr("DATA_SUBTITLE", ``) dataSubtitle := envOr("DATA_SUBTITLE", ``)
output := envOr("OUTPUT", `file:///tmp/f`) output := envOr("OUTPUT", `file:///tmp/f`)
@ -87,6 +87,9 @@ func newConfig() (Config, error) {
return result, fmt.Errorf("found negative weight floor %d", result.Data.Weight.Floor) return result, fmt.Errorf("found negative weight floor %d", result.Data.Weight.Floor)
} }
result.Data.Title = dataTitle
result.Data.Subtitle = dataSubtitle
if u, err := url.Parse(output); err != nil { if u, err := url.Parse(output); err != nil {
return result, fmt.Errorf("failed to parse $OUTPUT (%s): %w", output, err) return result, fmt.Errorf("failed to parse $OUTPUT (%s): %w", output, err)
} else { } else {
@ -151,11 +154,8 @@ func (d Data) weighXYasZ() Data {
} }
xyz[x][y] += z xyz[x][y] += z
} }
result := Data{ result := d
Labels: d.Labels[:], result.Points = [][]float64{}
Points: [][]float64{},
Weight: d.Weight,
}
for x := range xyz { for x := range xyz {
for y, z := range xyz[x] { for y, z := range xyz[x] {
result.Points = append(result.Points, []float64{x, y, z}) result.Points = append(result.Points, []float64{x, y, z})

22
main.go
View File

@ -31,28 +31,30 @@ func run(ctx context.Context) error {
if err != nil { if err != nil {
return err return err
} }
log.Printf("(%s, %s) = %v", x, y, data) log.Printf("%s: (%s, %s) = %v", config.Data.Title, x, y, data)
scatter := charts.NewScatter() scatter := charts.NewScatter()
scatter.SetGlobalOptions(charts.WithTitleOpts(opts.Title{ scatter.SetGlobalOptions(
charts.WithTitleOpts(opts.Title{
Title: config.Data.Title, Title: config.Data.Title,
Subtitle: config.Data.Subtitle, Subtitle: config.Data.Subtitle,
})) }),
scatter.SetGlobalOptions(charts.WithTooltipOpts(opts.Tooltip{ charts.WithTooltipOpts(opts.Tooltip{
Show: true, Show: true,
Formatter: `{c}`, Formatter: `{c}`,
})) }),
scatter.SetGlobalOptions(charts.WithLegendOpts(opts.Legend{Show: false})) charts.WithLegendOpts(opts.Legend{Show: false}),
scatter.SetGlobalOptions(charts.WithXAxisOpts(opts.XAxis{ charts.WithXAxisOpts(opts.XAxis{
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,
})) }),
scatter.SetGlobalOptions(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,
})) }),
)
scatter.AddSeries(y, data) scatter.AddSeries(y, data)
buff := bytes.NewBuffer(nil) buff := bytes.NewBuffer(nil)