[go] Go 언어로 데이터 시각화를 할 때 범례를 추가하는 방법은 무엇인가?
Go 언어로 데이터 시각화를 하기 위해서는 gonum.org/v1/plot
패키지를 사용할 수 있습니다. plot
패키지는 여러 가지 그래프 및 플롯 기능을 제공합니다.
범례를 그래프에 추가하기 위해서는 다음과 같은 단계를 따를 수 있습니다:
plot.New()
함수를 사용하여 새로운 플롯을 생성합니다.- 각각의 데이터 시리즈에 대한 값을 가진
plotter
객체를 생성합니다. plotter
객체를 플롯에 추가합니다.plot.Legend
함수를 사용하여 범례를 생성합니다.plot.Save
함수를 사용하여 그래프를 저장하거나 화면에 표시합니다.
아래는 예시 코드입니다:
package main
import (
"gonum.org/v1/plot"
"gonum.org/v1/plot/plotter"
"gonum.org/v1/plot/plotutil"
"gonum.org/v1/plot/vg"
)
func main() {
// 새로운 플롯 생성
p, _ := plot.New()
// 데이터 시리즈 생성
data1 := plotter.Values{1, 2, 3, 4, 5}
data2 := plotter.Values{5, 4, 3, 2, 1}
// 데이터 시리즈를 플롯에 추가
p, _ = plotutil.AddLinePoints(p, "Line1", generateDataPoints(data1), "Line2", generateDataPoints(data2))
// 범례 생성
p.Legend.Add("Line1", generateDataPoints(data1))
p.Legend.Add("Line2", generateDataPoints(data2))
// 그래프 파일로 저장
p.Save(4*vg.Inch, 4*vg.Inch, "graph.png")
}
func generateDataPoints(data plotter.Values) plotter.XYs {
pts := make(plotter.XYs, len(data))
for i, val := range data {
pts[i].X = float64(i)
pts[i].Y = val
}
return pts
}
이 예시 코드는 plot
패키지를 사용해서 두 개의 데이터 시리즈를 선 그래프로 그린 뒤, 범례를 추가하고 그래프를 파일로 저장하는 예시입니다. 코드를 실행하면 graph.png
파일에 그래프가 저장됩니다.
더 자세한 정보는 GoDoc 페이지를 참고하시기 바랍니다.