package main import ( "fwh-toolbox-server/utils/echart" "math/rand" "os" "time" "github.com/go-echarts/go-echarts/v2/opts" ) // 生成时间-数据序列 func generateLineItems() []opts.LineData { items := make([]opts.LineData, 0) now := time.Now() for i := 0; i < 10; i++ { // 随机值范围 -300 ~ +300 value := rand.Intn(600) - 300 items = append(items, opts.LineData{ Value: []interface{}{ now.Add(time.Duration(i) * time.Hour).Format(time.DateTime), value, }, }) } return items } func main() { var data []echart.LineChartData = []echart.LineChartData{} data = append(data, echart.LineChartData{ Legend: "A", Data: generateLineItems(), }) data = append(data, echart.LineChartData{ Legend: "B", Data: generateLineItems(), }) data = append(data, echart.LineChartData{ Legend: "C", Data: generateLineItems(), }) data = append(data, echart.LineChartData{ Legend: "D", Data: generateLineItems(), }) lineOpt := echart.LineChartOpt{ Global: echart.ChartOpt{ Title: "功率流图", }, Smooth: true, } line := echart.LineSmoothArea(lineOpt, data) f, _ := os.Create("line.html") defer f.Close() line.Render(f) }