[go] Go 언어로 데이터 시각화를 할 때 축 범위를 설정하는 방법은 무엇인가?
Go 언어를 사용하여 데이터 시각화를 할 때 축 범위를 설정하는 방법은 여러 가지가 있습니다. 여기에는 matplot, gonum/plot 등의 라이브러리를 사용하는 방법이 있습니다.
- Gonum/plot 라이브러리를 사용하는 방법입니다. Gonum/plot은 Go 언어로 데이터 시각화를 위한 강력한 도구입니다. 축 범위를 설정하기 위해
plot.Axis
구조체의Set
메서드를 사용할 수 있습니다. 다음은 예시 코드입니다.
import (
"github.com/gonum/plot/vg"
"github.com/gonum/plot/plotter"
"github.com/gonum/plot/plotutil"
"github.com/gonum/plot/vg/draw"
)
func main() {
p, _ := plot.New()
// 데이터 포인트 생성
points := plotter.Values{1, 2, 3, 4, 5}
// 데이터 포인트를 플롯에 추가
bar, _ := plotter.NewBarChart(points, vg.Points(20))
p.Add(bar)
// x 축, y 축 범위 설정
p.NominalXAxis([]string{"A", "B", "C", "D", "E"})
p.Y.Min = 0
p.Y.Max = 10
// 그래프 저장
p.Draw(draw.NewCanvas(), 400, 300, "example.png")
}
- Matplot 라이브러리를 사용하는 방법입니다. Matplot은 Python의 Matplotlib 라이브러리의 Go 버전으로, Go 언어로 데이터 시각화를 쉽게 할 수 있도록 도와줍니다. Matplot을 사용하면 축 범위를 설정하는 것도 간단합니다. 아래는 예시 코드입니다.
import (
"fmt"
"github.com/go-echarts/go-echarts/charts"
)
func main() {
line := charts.NewLine()
line.AddXAxis([]string{"A", "B", "C", "D", "E"}).
AddYAxis("Sample", []int{1, 2, 3, 4, 5})
// x 축, y 축 범위 설정
line.SetGlobalOptions(charts.WithYAxisOpts(charts.YAxisOpts{Min: "0", Max: "10"}))
line.Renderer("example.html")
fmt.Println(line)
}
이러한 방법을 사용하여 축 범위를 설정하고 데이터 시각화를 보다 정확하게 제어할 수 있습니다. 또한 각 라이브러리의 문서를 참고하여 더 많은 설정 옵션을 알아볼 수도 있습니다.
참고 자료:
- Gonum/plot: https://github.com/gonum/plot
- Matplot: https://github.com/go-echarts/go-echarts