Add y axis maximum
Some checks failed
continuous-integration/drone/push Build is failing

This commit is contained in:
2024-10-08 11:39:52 +11:00
parent e2a26ca579
commit d50e3991b2

23
main.go
View File

@@ -61,9 +61,7 @@ func findData(data []KeyValue, key string) (interface{}, bool) {
func GenerateAvgVcpusCharts(f *excelize.File, data any, name string) { func GenerateAvgVcpusCharts(f *excelize.File, data any, name string) {
var err error var err error
//rydeAvgCpu := make(map[string]interface{})
rydeAvgCpu := []KeyValue{} rydeAvgCpu := []KeyValue{}
//wsdcAvgCpu := make(map[string]interface{})
wsdcAvgCpu := []KeyValue{} wsdcAvgCpu := []KeyValue{}
var avgCpuColumns []string var avgCpuColumns []string
@@ -109,12 +107,12 @@ func GenerateAvgVcpusCharts(f *excelize.File, data any, name string) {
} }
// Generate RCC worksheet and graph // Generate RCC worksheet and graph
AvgChart(f, name+" RCC", "A1", avgCpuColumns, rydeAvgCpu) AvgChart(f, name+" RCC", "A1", avgCpuColumns, rydeAvgCpu, 0)
// Generate WSDC worksheet and graph // Generate WSDC worksheet and graph
AvgChart(f, name+" WSDC", "N1", avgCpuColumns, wsdcAvgCpu) AvgChart(f, name+" WSDC", "N1", avgCpuColumns, wsdcAvgCpu, 0)
} }
func GenerateCharts(f *excelize.File, data any, name string, location string) { func GenerateCharts(f *excelize.File, data any, name string, location string, yMaxValue float64) {
var err error var err error
//parsedData := make(map[string]interface{}) //parsedData := make(map[string]interface{})
parsedData := []KeyValue{} parsedData := []KeyValue{}
@@ -146,8 +144,8 @@ func GenerateCharts(f *excelize.File, data any, name string, location string) {
} }
// store the data together // store the data together
parsedData = addData(parsedData, "RCC", rcc) parsedData = addData(parsedData, "RCC", rcc, yMaxValue)
parsedData = addData(parsedData, "WSDC", wsdc) parsedData = addData(parsedData, "WSDC", wsdc, yMaxValue)
//parsedData["RCC"] = rcc //parsedData["RCC"] = rcc
//parsedData["WSDC"] = wsdc //parsedData["WSDC"] = wsdc
//prettyPrint(parsedData) //prettyPrint(parsedData)
@@ -156,7 +154,7 @@ func GenerateCharts(f *excelize.File, data any, name string, location string) {
AvgChart(f, name, location, dataColumns, parsedData) AvgChart(f, name, location, dataColumns, parsedData)
} }
func AvgChart(f *excelize.File, worksheetName string, location string, avgCpuColumns []string, data []KeyValue) { func AvgChart(f *excelize.File, worksheetName string, location string, avgCpuColumns []string, data []KeyValue, yMaxValue float64) {
var err error var err error
var chartSeries []excelize.ChartSeries var chartSeries []excelize.ChartSeries
var dataDates []string var dataDates []string
@@ -279,6 +277,7 @@ func AvgChart(f *excelize.File, worksheetName string, location string, avgCpuCol
Font: excelize.Font{ Font: excelize.Font{
Color: "000000", Color: "000000",
}, },
Maximum: yMaxValue,
}, },
Dimension: excelize.ChartDimension{ Dimension: excelize.ChartDimension{
Height: 500, Height: 500,
@@ -329,10 +328,10 @@ func main() {
} }
// Generate charts into workbook // Generate charts into workbook
GenerateAvgVcpusCharts(f, data.Tracking.AvgCpu, "Average vCPUs") GenerateAvgVcpusCharts(f, data.Tracking.AvgCpu, "Average vCPUs", 0)
GenerateCharts(f, data.Tracking.AvgRam, "Average RAM(GB)", "A30") GenerateCharts(f, data.Tracking.AvgRam, "Average RAM(GB)", "A30", 0)
GenerateCharts(f, data.Tracking.ProVmCount, "ProRated VM Count", "A60") GenerateCharts(f, data.Tracking.ProVmCount, "ProRated VM Count", "A60", 10000)
GenerateCharts(f, data.Tracking.VmCount, "VM Count", "N60") GenerateCharts(f, data.Tracking.VmCount, "VM Count", "N60", 10000)
// Save workbook // Save workbook
if err := f.SaveAs(*outputFile); err != nil { if err := f.SaveAs(*outputFile); err != nil {