[go] Go 언어로 막대 그래프를 그리는 방법은 무엇인가?

Go 언어는 강력한 표준 라이브러리를 제공하여 막대 그래프를 그리는 것을 비교적 간단하게 할 수 있습니다. 이를 위해 github.com/wcharczuk/go-chart 패키지를 사용해보겠습니다.

먼저, 해당 패키지를 다운로드하여 설치해야 합니다. 아래 명령어를 통해 패키지를 설치해주세요.

go get -u github.com/wcharczuk/go-chart

그리고 다음과 같이 코드를 작성하여 막대 그래프를 그릴 수 있습니다.

package main

import (
	"fmt"
	"os"

	chart "github.com/wcharczuk/go-chart"
)

func main() {
	// 데이터 세트 생성
	data := []chart.Value{
		{Value: 5, Label: "A"},
		{Value: 9, Label: "B"},
		{Value: 3, Label: "C"},
		{Value: 7, Label: "D"},
		{Value: 10, Label: "E"},
	}

	// 차트 생성
	barChart := chart.BarChart{
		Title:      "막대 그래프 예제",
		TitleStyle: chart.StyleShow(),
		Background: chart.Style{
			Padding: chart.Box{Top: 40, Left: 10, Right: 10},
		},
		Width:      600,
		Height:     400,
		BarSpacing: 30,
		Bars:       data,
	}

	// 차트 파일로 저장
	file, err := os.Create("barchart.png")
	if err != nil {
		fmt.Println(err)
		return
	}
	defer file.Close()

	err = barChart.Render(chart.PNG, file)
	if err != nil {
		fmt.Println(err)
		return
	}

	fmt.Println("막대 그래프 생성 완료!")
}

위 코드는 간단한 막대 그래프를 생성하고 barchart.png 파일로 저장하는 예제입니다. data 변수에 막대 그래프에 표시할 데이터를 입력한 후, barChart 변수를 통해 차트의 제목, 크기, 막대 간격 등을 설정합니다. 마지막으로 Render 함수를 호출하여 PNG 파일로 출력합니다.

실행하면 barchart.png 파일이 생성되며, 해당 파일을 열어 막대 그래프를 확인할 수 있습니다.

추가로, go-chart 패키지에는 막대 그래프 외에도 다양한 차트 유형을 그릴 수 있으므로 필요한 경우 해당 패키지의 문서를 참조하시기 바랍니다.

참고 자료: