Home  >  Article  >  Backend Development  >  Expert Tutorial: Draw Stunning Statistical Charts Using ECharts and Golang

Expert Tutorial: Draw Stunning Statistical Charts Using ECharts and Golang

PHPz
PHPzOriginal
2023-12-17 21:09:441051browse

Expert Tutorial: Draw Stunning Statistical Charts Using ECharts and Golang

With the further deepening of data analysis, the need for data visualization is becoming more and more important. ECharts is an open source data visualization library that helps users create beautiful, efficient, and interactive charts.

Golang is an efficient programming language that is widely used in the evolving big data scenario because of its outstanding concurrency performance and maintainability.

This article will introduce how to use ECharts and golang to draw stunning statistical charts, and provide specific code examples.

The first step is to install ECharts

First you need to install ECharts, you can use the following two methods:

1. Through the official website (https://echarts.apache.org /) Download ECharts. After unzipping, open the examples in the examples folder in your browser.

2. Use NPM, the command is as follows:

npm install echarts --save

The second step is to install golang

Installing golang is very simple, just download it from the official website (https://golang.org /) Download the corresponding binary package and install it according to the instructions.

The third step is to set up ECharts and golang

Developing using ECharts and golang requires the following two libraries:

  1. ECharts Go, which provides some practical functions, To create advanced ECharts charts in golang.
  2. Gin, it is a golang framework for web application development.

You can install these two libraries through the following commands:

go get github.com/go-echarts/go-echarts
go get github.com/gin-gonic/gin

The fourth step is to create Gin routing

Create the Golang server in the main.go file, and Set up Gin routing:

package main

import (
    "github.com/gin-gonic/gin"
    "github.com/go-echarts/go-echarts/charts"
    "net/http"
)

func main() {
    router := gin.Default()
    router.GET("/", GetChart)
    router.Run(":8080")
}

func GetChart(c *gin.Context) {
    chart := charts.NewLine()
    chart.SetGlobalOptions(charts.TitleOpts{Title: "ECharts with golang"})
    chart.AddXAxis([]string{"Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"}).         
          AddYAxis("Page views", []int{100, 120, 161, 134, 105, 130, 220})
    chart.Render(c.Writer)
    c.Header("Content-Type", "image/png")
    c.File("chart.png")
}

The fifth step is to run

Enter "http://localhost:8080" in the browser, you can see the chart we drew. The chart will be saved in a file named chart.png.

Step 6 Custom Chart

This is just a basic example. Charts can be customized using various features of ECharts Go. For example, you can add a legend, adjust axis labels and tick marks, and more.

func GetChart(c *gin.Context) {
    chart := charts.NewLine()
    chart.SetGlobalOptions(charts.TitleOpts{Title: "ECharts with golang"}, charts.TooltipOpts{Show: true})
    chart.AddXAxis([]string{"Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun"}).         
          AddYAxis("Page views", []int{100, 120, 161, 134, 105, 130, 220}).SetSeriesOptions(charts.LineOpts{Smooth: true})
    chart.SetSeriesOptions(charts.LabelTextOpts{Show: true, Formatter: "{b}
Page views: {c}"})
    chart.Render(c.Writer)
    c.Header("Content-Type", "image/png")
    c.File("chart.png")
}

Conclusion

In this article, we learned how to draw visualization charts using ECharts and golang. We learned how to install and configure ECharts in golang, as well as ways to create advanced charts using ECharts Go and Gin.

A basic example is provided here, but you can make more advanced customizations based on your own needs. Good luck with drawing the perfect data visualization chart!

The above is the detailed content of Expert Tutorial: Draw Stunning Statistical Charts Using ECharts and Golang. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn