func()

in pkg/display/graph/gauge/gauge.go [53:80]


func (mc *MetricColumn) Update(data []*api.SelectedRecord) error {
	for i, item := range data {
		// The number of `SelectedRecord` data may exceed the number of gauges in a `MetricColumn`.
		if i >= len(mc.gauges) {
			break
		}

		strValue := *(item.Value)
		v, err := strconv.Atoi(strValue)
		if err != nil {
			return err
		}

		if mc.aggregationNum != 0 {
			strValue = fmt.Sprintf("%.4f", float64(v)/float64(mc.aggregationNum))
		}

		maxValue, err := findMaxValue(data)
		if err != nil {
			return err
		}

		if err := mc.gauges[i].Absolute(v, maxValue, gauge.BorderTitle("["+strValue+"]")); err != nil {
			return err
		}
	}
	return nil
}