From 179e3952a4e5e74926397bc695f11a8dc16da14e Mon Sep 17 00:00:00 2001 From: Jin Zhang Date: Mon, 7 Mar 2022 20:24:07 +0000 Subject: [PATCH] [benchmark/cpu] set ymax to prevent the graph go to the legend --- hack/benchmark/time-to-k8s/chart.go | 2 +- hack/benchmark/time-to-k8s/cpu.go | 20 +++++++++++++++++--- hack/benchmark/time-to-k8s/page.go | 10 +++++----- 3 files changed, 23 insertions(+), 9 deletions(-) diff --git a/hack/benchmark/time-to-k8s/chart.go b/hack/benchmark/time-to-k8s/chart.go index 7e8f6e3857..e0ebcbcc18 100644 --- a/hack/benchmark/time-to-k8s/chart.go +++ b/hack/benchmark/time-to-k8s/chart.go @@ -74,7 +74,7 @@ func readInCSV(csvPath string, apps map[string]runs) error { values := []float64{} - // 8-13 contain the run results + // 8-16 contain the run results for i := 8; i <= 16; i++ { v, err := strconv.ParseFloat(d[i], 64) if err != nil { diff --git a/hack/benchmark/time-to-k8s/cpu.go b/hack/benchmark/time-to-k8s/cpu.go index 5dd7eaa16e..a69d106726 100644 --- a/hack/benchmark/time-to-k8s/cpu.go +++ b/hack/benchmark/time-to-k8s/cpu.go @@ -57,12 +57,13 @@ func createCPUChart(chartPath string, values []plotter.Values, names []string) e p := plot.New() p.Title.Text = "CPU utilization to go from 0 to successful Kubernetes deployment" p.Y.Label.Text = "CPU utilization" + setYMax(p, values) w := vg.Points(20) barsA, err := plotter.NewBarChart(values[0], w) if err != nil { - panic(err) + return err } barsA.LineStyle.Width = vg.Length(0) barsA.Color = plotutil.Color(0) @@ -70,7 +71,7 @@ func createCPUChart(chartPath string, values []plotter.Values, names []string) e barsB, err := plotter.NewBarChart(values[1], w) if err != nil { - panic(err) + return err } barsB.LineStyle.Width = vg.Length(0) barsB.Color = plotutil.Color(1) @@ -78,7 +79,7 @@ func createCPUChart(chartPath string, values []plotter.Values, names []string) e barsC, err := plotter.NewBarChart(values[2], w) if err != nil { - panic(err) + return err } barsC.LineStyle.Width = vg.Length(0) barsC.Color = plotutil.Color(2) @@ -100,3 +101,16 @@ func createCPUChart(chartPath string, values []plotter.Values, names []string) e return nil } + +func setYMax(p *plot.Plot, values []plotter.Values) { + ymax := 0.0 + for _, value := range values { + for _, v := range value { + if v > ymax { + ymax = v + } + } + } + + p.Y.Max = ymax + 5 +} diff --git a/hack/benchmark/time-to-k8s/page.go b/hack/benchmark/time-to-k8s/page.go index ab30b0a73a..36cfb6f5b5 100644 --- a/hack/benchmark/time-to-k8s/page.go +++ b/hack/benchmark/time-to-k8s/page.go @@ -66,7 +66,7 @@ func main() { apps := make(map[string]runs) if err := readInCSV(*csvPath, apps); err != nil { - log.Fatal(err) + log.Fatalf("fail to readin cvs file with err %s", err) } runningTime, cpuMdPlot, cpuChartPlot, totals, names := values(apps) @@ -76,7 +76,7 @@ func main() { // chart for running time if err := createChart(*imagePath+"-time.png", runningTime, totals, names); err != nil { - log.Fatal(err) + log.Fatalf("fail to create running time chart with err %s", err) } // markdown table for cpu utilization @@ -84,7 +84,7 @@ func main() { // chart for cpu utilization if err := createCPUChart(*imagePath+"-cpu.png", cpuChartPlot, names); err != nil { - log.Fatal(err) + log.Fatalf("fail to create CPU chart with err %s", err) } // generate page and save @@ -96,11 +96,11 @@ func main() { f, err := os.Create(*pagePath) if err != nil { - log.Fatal(err) + log.Fatalf("fail to create file under path %s, with err %s", *pagePath, err) } if err = tmpl.Execute(f, data); err != nil { - log.Fatal(err) + log.Fatalf("fail to populate the page with err %s", err) } f.Close()