用图形和图表将数据可视化使其更容易被理解,在不同编程语言中,我们可以使用数据可视化库来轻松生成干净漂亮的图表。
在本教程中,我们将学习如何使用go-echarts
库在Golang中绘制数据。
在GitHub上,它有超过4k颗星,使其成为Go中生成图表的最受欢迎的库之一。
我们将学习如何设置和安装这个包,然后逐步介绍如何创建不同的图表,包括条形图、折线图、饼图和文字云。
go-echarts
包括多种自定义选项,比如多个UI主题,你可以用它来进一步改善你的数据可视化的外观和感觉。go-echarts
有优秀的文档,并提供了一个干净和全面的API。
本机上,Go并不提供创建可定制的可视化的能力,但go-echarts
提供了对多种数据输入格式和移动优化的支持。
要设置我们的项目并安装go-echarts,请运行下面的代码。
mkdir learn_charts cd learn_charts go mod init learn_charts go get -u github.com/go-echarts/go-echarts/... touch main.go
现在,在你喜欢的编辑器中打开main.go
文件,让我们开始吧!
柱状图
首先,让我们介绍一下如何创建柱状图,这是最常见和最广泛使用的图表类型之一。
当你想显示各组之间的分布或比较时,条形图是理想的选择。
我将使用随机数据制作柱状图,并探索不同的选项来定制它。
首先,写一个函数来为我们的条形图创建随机样本数据:
package main import ( "math/rand" "os" "github.com/go-echarts/go-echarts/v2/opts" ) // generate random data for bar chart func generateBarItems() []opts.BarData { items := make([]opts.BarData, 0) for i := 0; i < 6; i++ { items = append(items, opts.BarData{Value: rand.Intn(500)}) } return items }
现在,开始创建我们的柱状图。
为此,将初始化一个新的柱状图并设置全局选项,如标题和图例。
然后,使用AddSeries()
方法和generateBarItems()
函数向我们的实例中填充数据。
最后,将把图表渲染成一个HTML文件。
另外,你也可以使用HTTP服务器渲染你的图表: