Объединение нескольких чартов с общим зумом
Я использую "github.com/go-echarts/go-echarts". Ниже приведен код, который выводит график kline. Подскажите, пожалуйста, как можно добавить к этому графику charts.NewLine(), чтобы у них совпадала нижняя ось и был единый zoom?
P.S. Изучил https://github.com/go-echarts/examples/tree/master/examples, но там не нашел необходимого примера. Также нашел https://github.com/go-echarts/go-echarts/issues/169, но код оттуда у меня подсвечивается ошибками, а попытки переписать под мою реализацию не увенчался успехом.

package main
import (
"net/http"
"github.com/go-echarts/go-echarts/v2/charts"
"github.com/go-echarts/go-echarts/v2/opts"
)
type klineData struct {
date string
data [4]float32
}
var kd = [...]klineData{
{date: "2018/1/25", data: [4]float32{2300, 2291.3, 2288.26, 2308.38}},
{date: "2018/1/28", data: [4]float32{2295.35, 2346.5, 2295.35, 2346.92}},
{date: "2018/1/29", data: [4]float32{2347.22, 2358.98, 2337.35, 2363.8}},
{date: "2018/1/30", data: [4]float32{2360.75, 2382.48, 2347.89, 2383.76}},
{date: "2018/1/31", data: [4]float32{2383.43, 2385.42, 2371.23, 2391.82}},
{date: "2018/2/1", data: [4]float32{2377.41, 2419.02, 2369.57, 2421.15}},
{date: "2018/2/4", data: [4]float32{2425.92, 2428.15, 2417.58, 2440.38}},
{date: "2018/2/5", data: [4]float32{2411, 2433.13, 2403.3, 2437.42}},
{date: "2018/2/6", data: [4]float32{2432.68, 2434.48, 2427.7, 2441.73}},
{date: "2018/2/7", data: [4]float32{2430.69, 2418.53, 2394.22, 2433.89}},
{date: "2018/2/8", data: [4]float32{2416.62, 2432.4, 2414.4, 2443.03}},
{date: "2018/2/18", data: [4]float32{2441.91, 2421.56, 2415.43, 2444.8}},
{date: "2018/2/19", data: [4]float32{2420.26, 2382.91, 2373.53, 2427.07}},
{date: "2018/2/20", data: [4]float32{2383.49, 2397.18, 2370.61, 2397.94}},
{date: "2018/2/21", data: [4]float32{2378.82, 2325.95, 2309.17, 2378.82}},
{date: "2018/2/22", data: [4]float32{2322.94, 2314.16, 2308.76, 2330.88}},
{date: "2018/2/25", data: [4]float32{2320.62, 2325.82, 2315.01, 2338.78}},
{date: "2018/2/26", data: [4]float32{2313.74, 2293.34, 2289.89, 2340.71}},
{date: "2018/2/27", data: [4]float32{2297.77, 2313.22, 2292.03, 2324.63}},
{date: "2018/2/28", data: [4]float32{2322.32, 2365.59, 2308.92, 2366.16}},
{date: "2018/3/1", data: [4]float32{2364.54, 2359.51, 2330.86, 2369.65}},
{date: "2018/3/4", data: [4]float32{2332.08, 2273.4, 2259.25, 2333.54}},
{date: "2018/3/5", data: [4]float32{2274.81, 2326.31, 2270.1, 2328.14}},
{date: "2018/3/6", data: [4]float32{2333.61, 2347.18, 2321.6, 2351.44}},
{date: "2018/3/7", data: [4]float32{2340.44, 2324.29, 2304.27, 2352.02}},
}
type KlineExamples struct{}
func httpserver(w http.ResponseWriter, _ *http.Request) {
kline := charts.NewKLine()
x := make([]string, 0)
y := make([]opts.KlineData, 0)
for i := 0; i < len(kd); i++ {
x = append(x, kd[i].date)
y = append(y, opts.KlineData{Value: kd[i].data})
}
kline.SetGlobalOptions(
charts.WithTitleOpts(opts.Title{
Title: "Example",
}),
charts.WithXAxisOpts(opts.XAxis{
SplitNumber: 20,
}),
charts.WithYAxisOpts(opts.YAxis{
Scale: true,
}),
charts.WithDataZoomOpts(opts.DataZoom{
Type: "inside",
Start: 50,
End: 100,
XAxisIndex: []int{0},
}),
)
kline.SetXAxis(x).AddSeries("kline", y)
kline.Render(w)
}
func main() {
http.HandleFunc("/", httpserver)
http.ListenAndServe(":5001", nil)
}