This commit is contained in:
jianxinhou 2025-03-19 11:47:12 +00:00 committed by GitHub
commit 60588e9f8a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 99 additions and 0 deletions

File diff suppressed because one or more lines are too long

View file

@ -72,6 +72,7 @@ type SeriesLabel struct {
// {b}: the name of a data item.
// {c}: the value of a data item.
// {d}: the percent of a data item(pie chart).
// {e}: the value with commas of a data item
Formatter string
// The color for label
Color Color
@ -306,6 +307,7 @@ func NewLabelFormatter(seriesNames []string, layout string) LabelFormatter {
percentText = humanize.FtoaWithDigits(percent*100, 2) + "%"
}
valueText := humanize.FtoaWithDigits(value, 2)
valueTextWithCommas := humanize.CommafWithDigits(value, 2)
name := ""
if len(seriesNames) > index {
name = seriesNames[index]
@ -313,6 +315,7 @@ func NewLabelFormatter(seriesNames []string, layout string) LabelFormatter {
text := strings.ReplaceAll(layout, "{c}", valueText)
text = strings.ReplaceAll(text, "{d}", percentText)
text = strings.ReplaceAll(text, "{b}", name)
text = strings.ReplaceAll(text, "{e}", valueTextWithCommas)
return text
}
}

View file

@ -86,4 +86,9 @@ func TestFormatter(t *testing.T) {
"a",
"b",
}, "")(0, 10, 0.12))
assert.Equal("10,000.01", NewLabelFormatter([]string{
"a",
"b",
}, "{e}")(0, 10000.01, 0))
}