func (chart *LineChart) PopDataPoint() {
	chart.Call("remove_data_point")
}
PopDataPoint calls remove_data_point without arguments, which defaults to removing the element at index 0.
package charts
import (
	"github.com/cnguy/gopherjs-frappe-charts/utils"
	"github.com/gopherjs/gopherjs/js"
)
type LineChartArgs struct {
	*js.Object
	Parent         string              `js:"parent"`
	Title          string              `js:"title"`
	Data           *ChartData          `js:"data"`
	Type           string              `js:"type"`
	Height         int                 `js:"height"`
	Colors         []string            `js:"colors"`
	XAxisMode      string              `js:"x_axis_mode"`
	YAxisMode      string              `js:"y_axis_mode"`
	IsSeries       int                 `js:"is_series"`
	ShowDots       int                 `js:"show_dots"`
	Heatline       int                 `js:"heatline"`
	RegionFill     int                 `js:"region_fill"`
	FormatTooltipX func(string) string `js:"format_tooltip_x"`
	FormatTooltipY func(string) string `js:"format_tooltip_y"`
}
func NewLineChart(parent string, data *ChartData) *LineChartArgs {
	new := &LineChartArgs{Object: js.Global.Get("Object").New()}
	new.Parent = parent
	new.Type = "line"
	new.Data = data
	return new
}
func (chartArgs *LineChartArgs) WithTitle(title string) *LineChartArgs {
	chartArgs.Title = title
	return chartArgs
}
func (chartArgs *LineChartArgs) WithHeight(height int) *LineChartArgs {
	chartArgs.Height = height
	return chartArgs
}
func (chartArgs *LineChartArgs) WithColors(colors []string) *LineChartArgs {
	chartArgs.Colors = colors
	return chartArgs
}
func (chartArgs *LineChartArgs) SetXAxisMode(mode string) *LineChartArgs {
	chartArgs.XAxisMode = mode
	return chartArgs
}
func (chartArgs *LineChartArgs) SetYAxisMode(mode string) *LineChartArgs {
	chartArgs.YAxisMode = mode
	return chartArgs
}
func (chartArgs *LineChartArgs) SetIsSeries(val bool) *LineChartArgs {
	chartArgs.SetBton("is_series", val)
	return chartArgs
}
func (chartArgs *LineChartArgs) SetShowDots(val bool) *LineChartArgs {
	chartArgs.SetBton("show_dots", val)
	return chartArgs
}
func (chartArgs *LineChartArgs) SetHeatline(val bool) *LineChartArgs {
	chartArgs.SetBton("heatline", val)
	return chartArgs
}
func (chartArgs *LineChartArgs) SetRegionFill(val bool) *LineChartArgs {
	chartArgs.SetBton("region_fill", val)
	return chartArgs
}
func (chartArgs *LineChartArgs) SetBton(key string, val bool) {
	chartArgs.Set(key, utils.Btoi(val))
}
func (chartArgs *LineChartArgs) WithFormatTooltipX(callback func(string) string) *LineChartArgs {
	chartArgs.FormatTooltipX = callback
	return chartArgs
}
func (chartArgs *LineChartArgs) WithFormatTooltipY(callback func(string) string) *LineChartArgs {
	chartArgs.FormatTooltipY = callback
	return chartArgs
}
type LineChart struct {
	*js.Object
}
func (chart *LineChart) UpdateValues(updateValues *UpdateValuesArgs) {
	chart.Call("update_values", updateValues.Values, updateValues.Labels)
}
func (chart *LineChart) AppendDataPoint(values []float64, label string) {
	chart.Call("add_data_point", utils.FloatSliceToInterface(values), label)
}
func (chart *LineChart) AddDataPoint(values []float64, label string, index int) {
	chart.Call("add_data_point", utils.FloatSliceToInterface(values), label, index)
}