[go] Go 언어로 데이터 시각화를 할 때 텍스트를 추가하는 방법은 무엇인가?
가장 간단한 방법은 fmt
패키지를 사용하여 그래프에 텍스트를 직접 출력하는 것입니다. 다음은 이 방법을 사용하는 예시 코드입니다:
package main
import (
"fmt"
"github.com/wcharczuk/go-chart"
"os"
)
func main() {
graph := chart.Chart{
Title: "Example Chart",
TitleStyle: chart.StyleShow(),
Background: chart.Style{
Padding: chart.Box{
Top: 50,
Bottom: 50,
},
},
Series: []chart.Series{
chart.ContinuousSeries{
Name: "Data",
Style: chart.Style{
Show: true,
StrokeColor: chart.ColorBlue,
},
XValues: []float64{1, 2, 3, 4, 5},
YValues: []float64{1, 4, 9, 16, 25},
},
},
}
// 텍스트 추가
textStyle := chart.Style{
TextRotationDegrees: 45,
TextAnchor: chart.AnchorStart,
}
graph.Elements = []chart.Renderable{
chart.Text{
Style: textStyle,
Text: "Sample Text",
Length: 50,
X: 1,
Y: 2,
},
}
file, _ := os.Create("example.png")
defer file.Close()
graph.Render(chart.PNG, file)
}
위의 코드에서는 chart.Text
를 사용하여 그래프에 텍스트를 추가합니다. Style
구조체를 사용하여 텍스트의 모양과 위치를 조정할 수 있습니다. 이 예시에서는 텍스트가 45도로 회전하도록 하고, 시작 위치에 텍스트를 배치하였습니다.
또 다른 방법은 github.com/golang/freetype
패키지를 사용하여 좀 더 다양한 텍스트 스타일을 적용하는 것입니다. 이 패키지를 사용하면 폰트 선택, 크기 조정, 굵게 표시 등 다양한 텍스트 기능을 사용할 수 있습니다.
이러한 방법들을 활용하여 데이터 시각화에서 텍스트를 원하는 방식으로 추가할 수 있습니다.
참고 자료:
- Go Chart 라이브러리: https://github.com/wcharczuk/go-chart
- Go FreeType 패키지: https://github.com/golang/freetype