Documentation ¶
Index ¶
- func FuncOpts(fn string) string
- func HSLAColor(h, s, l, a float32) string
- func HSLColor(h, s, l float32) string
- func RGBAColor(r, g, b uint16, a float32) string
- func RGBColor(r, g, b uint16) string
- type AngleAxis
- type AreaStyle
- type Assets
- type AxisLabel
- type AxisLine
- type AxisPointer
- type AxisTick
- type Bar3DChart
- type BarChart
- type BarData
- type BoxPlotData
- type Brush
- type BrushOutOfBrush
- type Chart3DData
- type CircularStyle
- type Colors
- type DataZoom
- type Dataset
- type EdgeLabel
- type EffectScatterData
- type Emphasis
- type Encode
- type FunnelData
- type GaugeData
- type GeoComponent
- type GeoData
- type GraphCategory
- type GraphChart
- type GraphForce
- type GraphLink
- type GraphNode
- type Grid
- type Grid3D
- type HeatMapChart
- type HeatMapData
- type Indicator
- type Initialization
- type ItemStyle
- type JSFunctions
- type KlineData
- type Label
- type LabelLine
- type Legend
- type LineChart
- type LineData
- type LineStyle
- type LiquidChart
- type LiquidData
- type MapData
- type MarkLineNameCoordItem
- type MarkLineNameTypeItem
- type MarkLineNameXAxisItem
- type MarkLineNameYAxisItem
- type MarkLineStyle
- type MarkLines
- type MarkPointNameCoordItem
- type MarkPointNameTypeItem
- type MarkPointStyle
- type MarkPoints
- type ParallelAxis
- type ParallelComponent
- type ParallelData
- type PieChart
- type PieData
- type Polar
- type PolarAxisBase
- type RadarComponent
- type RadarData
- type RadiusAxis
- type RippleEffect
- type SankeyLink
- type SankeyNode
- type ScatterChart
- type ScatterData
- type ScatterSeries
- type SingleAxis
- type SplitArea
- type SplitLine
- type SunBurstData
- type SunburstChart
- type TextStyle
- type ThemeRiverData
- type Title
- type ToolBoxFeature
- type ToolBoxFeatureBrush
- type ToolBoxFeatureDataView
- type ToolBoxFeatureDataZoom
- type ToolBoxFeatureRestore
- type ToolBoxFeatureSaveAsImage
- type Toolbox
- type Tooltip
- type TreeChart
- type TreeData
- type TreeLeaves
- type TreeMapChart
- type TreeMapLevel
- type TreeMapNode
- type UpperLabel
- type ViewControl
- type VisualMap
- type VisualMapInRange
- type WordCloudChart
- type WordCloudData
- type XAxis
- type XAxis3D
- type YAxis
- type YAxis3D
- type ZAxis3D
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type AngleAxis ¶
type AngleAxis struct { PolarAxisBase Clockwise bool `json:"clockwise,omitempty"` }
type AreaStyle ¶
type AreaStyle struct { // Fill area color. Color string `json:"color,omitempty"` // Opacity of the component. Supports value from 0 to 1, and the component will not be drawn when set to 0. Opacity float32 `json:"opacity,omitempty"` }
AreaStyle is the option set for an area style component.
type Assets ¶
type Assets struct { JSAssets types.OrderedSet CSSAssets types.OrderedSet CustomizedJSAssets types.OrderedSet CustomizedCSSAssets types.OrderedSet }
Assets contains options for static assets.
func (*Assets) AddCustomizedCSSAssets ¶
AddCustomizedCSSAssets adds the customized css assets which will not be added the `host` prefix.
func (*Assets) AddCustomizedJSAssets ¶
AddCustomizedJSAssets adds the customized javascript assets which will not be added the `host` prefix.
func (*Assets) InitAssets ¶
func (opt *Assets) InitAssets()
InitAssets inits the static assets storage.
type AxisLabel ¶
type AxisLabel struct { // Set this to false to prevent the axis label from appearing. Show bool `json:"show"` // Interval of Axis label, which is available in category axis. // It uses a strategy that labels do not overlap by default. // You may set it to be 0 to display all labels compulsively. // If it is set to be 1, it means that labels are shown once after one label. // And if it is set to be 2, it means labels are shown once after two labels, and so on. Interval string `json:"interval,omitempty"` // Set this to true so the axis labels face the inside direction. Inside bool `json:"inside,omitempty"` // Rotation degree of axis label, which is especially useful when there is no enough space for category axis. // Rotation degree is from -90 to 90. Rotate float64 `json:"rotate,omitempty"` // The margin between the axis label and the axis line. Margin float64 `json:"margin,omitempty"` // Formatter of axis label, which supports string template and callback function. // // Example: // // Use string template; template variable is the default label of axis {value} // formatter: '{value} kg' // // Use callback function; function parameters are axis index // // // formatter: function (value, index) { // // Formatted to be month/day; display year only in the first label // var date = new Date(value); // var texts = [(date.getMonth() + 1), date.getDate()]; // if (idx === 0) { // texts.unshift(date.getYear()); // } // return texts.join('/'); // } Formatter string `json:"formatter,omitempty"` ShowMinLabel bool `json:"showMinLabel"` ShowMaxLabel bool `json:"showMaxLabel"` // Color of axis label is set to be axisLine.lineStyle.color by default. Callback function is supported, // in the following format: // // (val: string) => Color // Parameter is the text of label, and return value is the color. See the following example: // // textStyle: { // color: function (value, index) { // return value >= 0 ? 'green' : 'red'; // } // } Color string `json:"color,omitempty"` // axis label font style FontStyle string `json:"fontStyle,omitempty"` // axis label font weight FontWeight string `json:"fontWeight,omitempty"` // axis label font family FontFamily string `json:"fontFamily,omitempty"` // axis label font size FontSize string `json:"fontSize,omitempty"` // Horizontal alignment of axis label Align string `json:"align,omitempty"` // Vertical alignment of axis label VerticalAlign string `json:"verticalAlign,omitempty"` // Line height of the axis label LineHeight string `json:"lineHeight,omitempty"` }
AxisLabel settings related to axis label. https://echarts.apache.org/en/option.html#xAxis.axisLabel
type AxisLine ¶
type AxisLine struct { // Set this to false to prevent the axis line from showing. Show bool `json:"show"` // Specifies whether X or Y axis lies on the other's origin position, where value is 0 on axis. // Valid only if the other axis is of value type, and contains 0 value. OnZero bool `json:"onZero,omitempty"` // When multiple axes exists, this option can be used to specify which axis can be "onZero" to. OnZeroAxisIndex int `json:"onZeroAxisIndex,omitempty"` // Symbol of the two ends of the axis. It could be a string, representing the same symbol for two ends; or an array // with two string elements, representing the two ends separately. It's set to be 'none' by default, meaning no //arrow for either end. If it is set to be 'arrow', there shall be two arrows. If there should only one arrow //at the end, it should set to be ['none', 'arrow']. Symbol string `json:"symbol,omitempty"` // Size of the arrows at two ends. The first is the width perpendicular to the axis, the next is the width parallel to the axis. SymbolSize []float64 `json:"symbolSize,omitempty"` // Arrow offset of axis. If is array, the first number is the offset of the arrow at the beginning, and the second // number is the offset of the arrow at the end. If is number, it means the arrows have the same offset. SymbolOffset []float64 `json:"symbolOffset,omitempty"` LineStyle *LineStyle `json:"lineStyle,omitempty"` }
AxisLine controls settings related to axis line. https://echarts.apache.org/en/option.html#yAxis.axisLine
type AxisPointer ¶
type AxisPointer struct { // Indicator type. // Options: // - 'line' line indicator. // - 'shadow' shadow crosshair indicator. // - 'none' no indicator displayed. // - 'cross' crosshair indicator, which is actually the shortcut of enable two axisPointers of two orthometric axes. Type string `json:"type,omitempty"` // Whether snap to point automatically. The default value is auto determined. // This feature usually makes sense in value axis and time axis, where tiny points can be seeked automatically. Snap bool `json:"snap,omitempty"` }
AxisPointer is the option set for an axisPointer component https://echarts.apache.org/en/option.html#axisPointer
type AxisTick ¶
type AxisTick struct { // Set this to false to prevent the axis tick from showing. Show bool `json:"show"` // interval of axisTick, which is available in category axis. is set to be the same as axisLabel.interval by default. // It uses a strategy that labels do not overlap by default. // You may set it to be 0 to display all labels compulsively. // If it is set to be 1, it means that labels are shown once after one label. And if it is set to be 2, it means labels are shown once after two labels, and so on. // On the other hand, you can control by callback function, whose format is shown below: // (index:number, value: string) => boolean // The first parameter is index of category, and the second parameter is the name of category. The return values decides whether to display label. Interval string `json:"interval,omitempty"` // Align axis tick with label, which is available only when boundaryGap is set to be true in category axis. AlignWithLabel bool `json:"alignWithLabel,omitempty"` }
type Bar3DChart ¶
type Bar3DChart struct { // Shading is the coloring effect of 3D graphics in 3D Bar. // The following three coloring methods are supported in echarts-gl: // Options: // // * "color": Only display colors, not affected by other factors such as lighting. // * "lambert": Through the classic [lambert] coloring, can express the light and dark that the light shows. // * "realistic": Realistic rendering, combined with light.ambientCubemap and postEffect, // can improve the quality and texture of the display. // [Physical Based Rendering (PBR)] (https://www.marmoset.co/posts/physically-based-rendering-and-you-can-too/) // is used in ECharts GL to represent realistic materials. Shading string }
Bar3DChart is the option set for a 3D bar chart.
type BarChart ¶
type BarChart struct { Type string // Name of stack. On the same category axis, the series with the // same stack name would be put on top of each other. Stack string // The gap between bars between different series, is a percent value like '30%', // which means 30% of the bar width. // Set barGap as '-100%' can overlap bars that belong to different series, // which is useful when putting a series of bar as background. // In a single coordinate system, this attribute is shared by multiple 'bar' series. // This attribute should be set on the last 'bar' series in the coordinate system, // then it will be adopted by all 'bar' series in the coordinate system. BarGap string // The bar gap of a single series, defaults to be 20% of the category gap, // can be set as a fixed value. // In a single coordinate system, this attribute is shared by multiple 'bar' series. // This attribute should be set on the last 'bar' series in the coordinate system, // then it will be adopted by all 'bar' series in the coordinate system. BarCategoryGap string // Index of x axis to combine with, which is useful for multiple x axes in one chart. XAxisIndex int // Index of y axis to combine with, which is useful for multiple y axes in one chart. YAxisIndex int ShowBackground bool RoundCap bool CoordSystem string }
BarChart https://echarts.apache.org/en/option.html#series-bar
type BarData ¶
type BarData struct { // Name of data item. Name string `json:"name,omitempty"` // Value of a single data item. Value interface{} `json:"value,omitempty"` // The style setting of the text label in a single bar. Label *Label `json:"label,omitempty"` // ItemStyle settings in this series data. ItemStyle *ItemStyle `json:"itemStyle,omitempty"` // Tooltip settings in this series data. Tooltip *Tooltip `json:"tooltip,omitempty"` }
BarData https://echarts.apache.org/en/option.html#series-bar.data
type BoxPlotData ¶
type BoxPlotData struct { // Name of data item. Name string `json:"name,omitempty"` // Value of a single data item. Value interface{} `json:"value,omitempty"` // The style setting of the text label in a single bar. Label *Label `json:"label,omitempty"` // ItemStyle settings in this series data. ItemStyle *ItemStyle `json:"itemStyle,omitempty"` // Emphasis settings in this series data. Emphasis *Emphasis `json:"emphasis,omitempty"` // Tooltip settings in this series data. Tooltip *Tooltip `json:"tooltip,omitempty"` }
BoxPlotData https://echarts.apache.org/en/option.html#series-boxplot.data
type Brush ¶
type Brush struct { //XAxisIndex Assigns which of the xAxisIndex can use brush selecting. XAxisIndex interface{} `json:"xAxisIndex,omitempty"` //Brushlink is a mapping of dataIndex. So data of every series with brushLink should be guaranteed to correspond to the other. Brushlink interface{} `json:"brushlink,omitempty"` //OutOfBrush Defines visual effects of items out of selection OutOfBrush *BrushOutOfBrush `json:"outOfBrush,omitempty"` }
Brush is an area-selecting component, with which user can select part of data from a chart to display in detail, or do calculations with them. https://echarts.apache.org/en/option.html#brush
type BrushOutOfBrush ¶
type BrushOutOfBrush struct {
ColorAlpha float32 `json:"colorAlpha,omitempty"`
}
BrushOutOfBrush https://echarts.apache.org/en/option.html#brush.outOfBrush
type Chart3DData ¶
type Chart3DData struct { // Name of the data item. Name string `json:"name,omitempty"` // Value of the data item. // []interface{}{1, 2, 3} Value []interface{} `json:"value,omitempty"` // ItemStyle settings in this series data. ItemStyle *ItemStyle `json:"itemStyle,omitempty"` // The style setting of the text label in a single bar. Label *Label `json:"label,omitempty"` }
type CircularStyle ¶
type CircularStyle struct {
RotateLabel bool `json:"rotateLabel,omitempty"`
}
CircularStyle contains styling options for circular layout.
type DataZoom ¶
type DataZoom struct { // Data zoom component of inside type, Options: "inside", "slider" Type string `json:"type" default:"inside"` // The start percentage of the window out of the data extent, in the range of 0 ~ 100. // default 0 Start float32 `json:"start,omitempty"` // The end percentage of the window out of the data extent, in the range of 0 ~ 100. // default 100 End float32 `json:"end,omitempty"` // Specify the frame rate of views refreshing, with unit millisecond (ms). // If animation set as true and animationDurationUpdate set as bigger than 0, // you can keep throttle as the default value 100 (or set it as a value bigger than 0), // otherwise it might be not smooth when dragging. // If animation set as false or animationDurationUpdate set as 0, and data size is not very large, // and it seems to be not smooth when dragging, you can set throttle as 0 to improve that. Throttle float32 `json:"throttle,omitempty"` // Specify which xAxis is/are controlled by the dataZoom-inside when Cartesian coordinate system is used. // By default the first xAxis that parallel to dataZoom are controlled when dataZoom-inside. // Orient is set as 'horizontal'. But it is recommended to specify it explicitly but not use default value. // If it is set as a single number, one axis is controlled, while if it is set as an Array , // multiple axes are controlled. XAxisIndex interface{} `json:"xAxisIndex,omitempty"` // Specify which yAxis is/are controlled by the dataZoom-inside when Cartesian coordinate system is used. // By default the first yAxis that parallel to dataZoom are controlled when dataZoom-inside. // Orient is set as 'vertical'. But it is recommended to specify it explicitly but not use default value. // If it is set as a single number, one axis is controlled, while if it is set as an Array , // multiple axes are controlled. YAxisIndex interface{} `json:"yAxisIndex,omitempty"` }
DataZoom is the option set for a zoom component. dataZoom component is used for zooming a specific area, which enables user to investigate data in detail, or get an overview of the data, or get rid of outlier points. https://echarts.apache.org/en/option.html#dataZoom
type Dataset ¶
type Dataset struct {
//source
Source interface{} `json:"source"`
}
Dataset brings convenience in data management separated with styles and enables data reuse by different series. More importantly, it enables data encoding from data to visual, which brings convenience in some scenarios. https://echarts.apache.org/en/option.html#dataset.id
type EdgeLabel ¶
type EdgeLabel struct { // Show is true to show label on edge. Show bool `json:"show,omitempty"` // Position is the label's position in line of edge. // * "start" // * "middle" // * "end" Position string `json:"position,omitempty"` // Color is the text color Color string `json:"color,omitempty"` // FontStyle // * "normal" // * "italic" // * "oblique" FontStyle string `json:"fontStyle,omitempty"` // FontWeight can be the string or a number // * "normal" // * "bold" // * "bolder" // * "lighter" // 100 | 200 | 300| 400 ... FontWeight interface{} `json:"fontWeight,omitempty"` // FontSize FontSize float32 `json:"fontSize,omitempty"` // Align is a horizontal alignment of text, automatic by default. // * "left" // * "center" // * "right" Align string `json:"align,omitempty"` // Align is a horizontal alignment of text, automatic by default. // * "top" // * "middle" // * "bottom" VerticalAlign string `json:"verticalAlign,omitempty"` // Padding of the text fragment, for example: // Padding: [3, 4, 5, 6]: represents padding of [top, right, bottom, left]. // Padding: 4: represents padding: [4, 4, 4, 4]. // Padding: [3, 4]: represents padding: [3, 4, 3, 4]. Padding interface{} `json:"padding,omitempty"` // Width of text block Width float32 `json:"width,omitempty"` // Height of text block Height float32 `json:"height,omitempty"` // Edge label formatter, which supports string template and callback function. // In either form, \n is supported to represent a new line. // String template, Model variation includes: // // {a}: series name. // {b}: the name of a data item. // {c}: the value of a data item. // {@xxx}: the value of a dimension named"xxx", for example,{@product}refers the value of"product"` dimension. // {@[n]}: the value of a dimension at the index ofn, for example,{@[3]}` refers the value at dimensions[3]. Formatter string `json:"formatter,omitempty"` }
EdgeLabel is the properties of an label of edge. https://echarts.apache.org/en/option.html#series-graph.edgeLabel
type EffectScatterData ¶
type EffectScatterData struct { // Name of data item. Name string `json:"name,omitempty"` // Value of a single data item. Value interface{} `json:"value,omitempty"` }
EffectScatterData https://echarts.apache.org/en/option.html#series-effectScatter.data
type Emphasis ¶
type Emphasis struct { // the emphasis style of label Label *Label `json:"label,omitempty"` // the emphasis style of item ItemStyle *ItemStyle `json:"itemStyle,omitempty"` }
Emphasis is the style when it is highlighted, like being hovered by mouse, or highlighted via legend connect.
type Encode ¶
type Encode struct { X interface{} `json:"x"` Y interface{} `json:"y"` }
Define what is encoded to for each dimension of data https://echarts.apache.org/en/option.html#series-candlestick.encode
type FunnelData ¶
type FunnelData struct { // Name of data item. Name string `json:"name,omitempty"` // Value of a single data item. Value interface{} `json:"value,omitempty"` }
FunnelData https://echarts.apache.org/en/option.html#series-funnel.data
type GaugeData ¶
type GaugeData struct { // Name of data item. Name string `json:"name,omitempty"` // Value of a single data item. Value interface{} `json:"value,omitempty"` }
GaugeData https://echarts.apache.org/en/option.html#series-gauge.data
type GeoComponent ¶
type GeoComponent struct { // Map charts. Map string `json:"map,omitempty"` // Graphic style of Map Area Border, emphasis is the style when it is highlighted, // like being hovered by mouse, or highlighted via legend connect. ItemStyle *ItemStyle `json:"itemStyle,omitempty"` // Set this to true, to prevent interaction with the axis. Silent bool `json:"silent,omitempty"` }
GeoComponent is the option set for geo component. https://echarts.apache.org/en/option.html#geo
type GeoData ¶
type GeoData struct { // Name of data item. Name string `json:"name,omitempty"` // Value of a single data item. Value interface{} `json:"value,omitempty"` }
GeoData
type GraphCategory ¶
type GraphCategory struct { // Name of category, which is used to correspond with legend and the content of tooltip. Name string `json:"name"` // The label style of node in this category. Label *Label `json:"label,omitempty"` }
GraphCategory represents a category for data nodes. The categories of node, which is optional. If there is a classification of nodes, the category of each node can be assigned through data[i].category. And the style of category will also be applied to the style of nodes. categories can also be used in legend. https://echarts.apache.org/en/option.html#series-graph.categories
type GraphChart ¶
type GraphChart struct { // Graph layout. // * 'none' No layout, use x, y provided in node as the position of node. // * 'circular' Adopt circular layout, see the example Les Miserables. // * 'force' Adopt force-directed layout, see the example Force, the // detail about layout configurations are in graph.force Layout string // Force is the option set for graph force layout. Force *GraphForce // Whether to enable mouse zooming and translating. false by default. // If either zooming or translating is wanted, it can be set to 'scale' or 'move'. // Otherwise, set it to be true to enable both. Roam bool // EdgeSymbol is the symbols of two ends of edge line. // * 'circle' // * 'arrow' // * 'none' // example: ["circle", "arrow"] or "circle" EdgeSymbol interface{} // EdgeSymbolSize is size of symbol of two ends of edge line. Can be an array or a single number // example: [5,10] or 5 EdgeSymbolSize interface{} // Draggable allows you to move the nodes with the mouse if they are not fixed. Draggable bool // Whether to focus/highlight the hover node and it's adjacencies. FocusNodeAdjacency bool // The categories of node, which is optional. If there is a classification of nodes, // the category of each node can be assigned through data[i].category. // And the style of category will also be applied to the style of nodes. categories can also be used in legend. Categories []*GraphCategory // EdgeLabel is the properties of an label of edge. EdgeLabel *EdgeLabel `json:"edgeLabel"` }
GraphChart is the option set for graph chart. https://echarts.apache.org/en/option.html#series-graph
type GraphForce ¶
type GraphForce struct { // The initial layout before force-directed layout, which will influence on the result of force-directed layout. // It defaults not to do any layout and use x, y provided in node as the position of node. // If it doesn't exist, the position will be generated randomly. // You can also use circular layout "circular". InitLayout string `json:"initLayout,omitempty"` // The repulsion factor between nodes. The repulsion will be stronger and the distance // between 2 nodes becomes further as this value becomes larger. // It can be an array to represent the range of repulsion. In this case larger value have larger // repulsion and smaller value will have smaller repulsion. Repulsion float32 `json:"repulsion,omitempty"` // The gravity factor enforcing nodes approach to the center. The nodes will be // closer to the center as the value becomes larger. default 0.1 Gravity float32 `json:"gravity,omitempty"` // The distance between 2 nodes on edge. This distance is also affected by repulsion. // It can be an array to represent the range of edge length. In this case edge with larger // value will be shorter, which means two nodes are closer. And edge with smaller value will be longer. // default 30 EdgeLength float32 `json:"edgeLength,omitempty"` }
Configuration items about force-directed layout. Force-directed layout simulates spring/charge model, which will add a repulsion between 2 nodes and add a attraction between 2 nodes of each edge. In each iteration nodes will move under the effect of repulsion and attraction. After several iterations, the nodes will be static in a balanced position. As a result, the energy local minimum of this whole model will be realized. The result of force-directed layout has a good symmetries and clustering, which is also aesthetically pleasing.
type GraphLink ¶
type GraphLink struct { // A string representing the name of source node on edge. Can also be a number representing the node index. Source interface{} `json:"source,omitempty"` // A string representing the name of target node on edge. Can also be a number representing node index. Target interface{} `json:"target,omitempty"` // value of edge, can be mapped to edge length in force graph. Value float32 `json:"value,omitempty"` // Label for this link. Label *EdgeLabel `json:"label,omitempty"` }
GraphLink represents relationship between two data nodes. https://echarts.apache.org/en/option.html#series-graph.links
type GraphNode ¶
type GraphNode struct { // Name of data item. Name string `json:"name,omitempty"` // x value of node position. X float32 `json:"x,omitempty"` // y value of node position. Y float32 `json:"y,omitempty"` // Value of data item. Value float32 `json:"value,omitempty"` // If node are fixed when doing force directed layout. Fixed bool `json:"fixed,omitempty"` // Index of category which the data item belongs to. Category interface{} `json:"category,omitempty"` // Symbol of node of this category. // Icon types provided by ECharts includes // 'circle', 'rect', 'roundRect', 'triangle', 'diamond', 'pin', 'arrow', 'none' // It can be set to an image with 'image://url' , in which URL is the link to an image, or dataURI of an image. Symbol string `json:"symbol,omitempty"` // node of this category symbol size. It can be set to single numbers like 10, // or use an array to represent width and height. For example, [20, 10] means symbol width is 20, and height is10. SymbolSize interface{} `json:"symbolSize,omitempty"` // The style of this node. ItemStyle *ItemStyle `json:"itemStyle,omitempty"` }
GraphNode represents a data node in graph chart. https://echarts.apache.org/en/option.html#series-graph.data
type Grid ¶
type Grid struct { // Distance between grid component and the left side of the container. Left string `json:"left,omitempty"` // Distance between grid component and the right side of the container. Right string `json:"right,omitempty"` // Distance between grid component and the top side of the container. Top string `json:"top,omitempty"` // Distance between grid component and the bottom side of the container. Bottom string `json:"bottom,omitempty"` // Height of grid component. Adaptive by default. Height string `json:"height,omitempty"` }
Grid Drawing grid in rectangular coordinate. https://echarts.apache.org/en/option.html#grid
type Grid3D ¶
type Grid3D struct { // Whether to show the coordinate. Show bool `json:"show,omitempty"` // 3D Cartesian coordinates width // default 100 BoxWidth float32 `json:"boxWidth,omitempty"` // 3D Cartesian coordinates height // default 100 BoxHeight float32 `json:"boxHeight,omitempty"` // 3D Cartesian coordinates depth // default 100 BoxDepth float32 `json:"boxDepth,omitempty"` // Rotate or scale fellows the mouse ViewControl *ViewControl `json:"viewControl,omitempty"` }
Grid3D contains options for the 3D coordinate.
type HeatMapChart ¶
type HeatMapChart struct { // Index of x axis to combine with, which is useful for multiple x axes in one chart. XAxisIndex int // Index of y axis to combine with, which is useful for multiple y axes in one chart. YAxisIndex int }
HeatMapChart is the option set for a heatmap chart. https://echarts.apache.org/en/option.html#series-heatmap
type HeatMapData ¶
type HeatMapData struct { // Name of data item. Name string `json:"name,omitempty"` // Value of a single data item. Value interface{} `json:"value,omitempty"` }
HeatMapData https://echarts.apache.org/en/option.html#series-heatmap.data
type Indicator ¶
type Indicator struct { // Indicator name Name string `json:"name,omitempty"` // The maximum value of indicator. It is an optional configuration, but we recommend to set it manually. Max float32 `json:"max,omitempty"` // The minimum value of indicator. It it an optional configuration, with default value of 0. Min float32 `json:"min,omitempty"` // Specify a color the the indicator. Color string `json:"color,omitempty"` }
Indicator is the option set for a radar chart.
type Initialization ¶
type Initialization struct { // HTML title PageTitle string `default:"Awesome go-echarts"` // Width of canvas Width string `default:"900px"` // Height of canvas Height string `default:"500px"` // BackgroundColor of canvas BackgroundColor string // Chart unique ID ChartID string // Assets host AssetsHost string `default:"https://go-echarts.github.io/go-echarts-assets/assets/"` // Theme of chart Theme string `default:"white"` }
Initialization contains options for the canvas.
func (*Initialization) Validate ¶
func (opt *Initialization) Validate()
Validate validates the initialization configurations.
type ItemStyle ¶
type ItemStyle struct { // Color of chart // Kline Up candle color Color string `json:"color,omitempty"` // Kline Down candle color Color0 string `json:"color0,omitempty"` // BorderColor is the hart border color // Kline Up candle border color BorderColor string `json:"borderColor,omitempty"` // Kline Down candle border color BorderColor0 string `json:"borderColor0,omitempty"` // Color saturation of a border or gap. BorderColorSaturation float32 `json:"borderColorSaturation,omitempty"` // Border width of a node BorderWidth float32 `json:"borderWidth,omitempty"` // Gaps between child nodes. GapWidth float32 `json:"gapWidth,omitempty"` // Opacity of the component. Supports value from 0 to 1, and the component will not be drawn when set to 0. Opacity float32 `json:"opacity,omitempty"` }
ItemStyle represents a style of an item.
type JSFunctions ¶
type JSFunctions struct {
Fns []string
}
func (*JSFunctions) AddJSFuncs ¶
func (f *JSFunctions) AddJSFuncs(fn ...string)
AddJSFuncs adds a new JS function.
type KlineData ¶
type KlineData struct { // Name of data item. Name string `json:"name,omitempty"` // Value of a single data item. Value interface{} `json:"value,omitempty"` }
KlineData https://echarts.apache.org/en/option.html#series-candlestick.data
type Label ¶
type Label struct { // Whether to show label. Show bool `json:"show"` // Color is the text color. // If set as "auto", the color will assigned as visual color, such as series color. Color string `json:"color,omitempty"` // font style. // Options are: 'normal', 'italic', 'oblique' FontStyle string `json:"fontStyle,omitempty"` // font thick weight. // Options are: 'normal', 'bold', 'bolder', 'lighter', 100 | 200 | 300 | 400... FontWeight string `json:"fontWeight,omitempty"` // font family. // Can also be 'serif' , 'monospace', ... FontFamily string `json:"fontFamily,omitempty"` // font size. FontSize float32 `json:"fontSize,omitempty"` // Horizontal alignment of text, automatic by default. // Options are: 'left', 'center', 'right' Align string `json:"align,omitempty"` // Vertical alignment of text, automatic by default. // Options are: 'top', 'middle', 'bottom' VerticalAlign string `json:"verticalAlign,omitempty"` // Line height of the text fragment. LineHeight float32 `json:"lineHeight,omitempty"` // Background color of the text fragment. BackgroundColor string `json:"backgroundColor,omitempty"` // Border color of the text fragment. BorderColor string `json:"borderColor,omitempty"` // Border width of the text fragment. BorderWidth float32 `json:"borderWidth,omitempty"` // the text fragment border type. // Possible values are: 'solid', 'dashed', 'dotted' BorderType string `json:"borderType,omitempty"` // To set the line dash offset. With borderType , we can make the line style more flexible. BorderDashOffset float32 `json:"borderDashOffset,omitempty"` // Border radius of the text fragment. BorderRadius float32 `json:"borderRadius,omitempty"` // Padding of the text fragment, for example: // padding: [3, 4, 5, 6]: represents padding of [top, right, bottom, left]. // padding: 4: represents padding: [4, 4, 4, 4]. // padding: [3, 4]: represents padding: [3, 4, 3, 4]. // Notice, width and height specifies the width and height of the content, without padding. Padding string `json:"padding,omitempty"` // Label position. Followings are the options: // // [x, y] // Use relative percentage, or absolute pixel values to represent position of label // relative to top-left corner of bounding box. For example: // // Absolute pixel values: position: [10, 10], // Relative percentage: position: ["50%", "50%"] // // "top" // "left" // "right" // "bottom" // "inside" // "insideLeft" // "insideRight" // "insideTop" // "insideBottom" // "insideTopLeft" // "insideBottomLeft" // "insideTopRight" // "insideBottomRight" Position string `json:"position,omitempty"` // Data label formatter, which supports string template and callback function. // In either form, \n is supported to represent a new line. // String template, Model variation includes: // // {a}: series name. // {b}: the name of a data item. // {c}: the value of a data item. // {@xxx}: the value of a dimension named"xxx", for example,{@product}refers the value of"product"` dimension. // {@[n]}: the value of a dimension at the index ofn, for example,{@[3]}` refers the value at dimensions[3]. Formatter string `json:"formatter,omitempty"` }
Label contains options for a label text. https://echarts.apache.org/en/option.html#series-line.label
type LabelLine ¶
type LabelLine struct { // Whether to show the label guide line. Show bool `json:"show"` // Whether to show the label guide line above the corresponding element. ShowAbove bool `json:"showAbove"` // The length of the second segment of guide line. Length2 float64 `json:"length2,omitempty"` // smoothness of guide line. Smooth bool `json:"smooth"` // Minimum turn angle between two segments of guide line MinTurnAngle float64 `json:"minTurnAngle,omitempty"` // The style of label line LineStyle *LineStyle `json:"lineStyle,omitempty"` }
LabelLine Configuration of label guide line.
type Legend ¶
type Legend struct { // Whether to show the Legend, default true. Show bool `json:"show"` // Type of legend. Optional values: // "plain": Simple legend. (default) // "scroll": Scrollable legend. It helps when too many legend items needed to be shown. Type string `json:"type"` // Distance between legend component and the left side of the container. // left value can be instant pixel value like 20; it can also be a percentage // value relative to container width like '20%'; and it can also be 'left', 'center', or 'right'. // If the left value is set to be 'left', 'center', or 'right', then the component // will be aligned automatically based on position. Left string `json:"left,omitempty"` // Distance between legend component and the top side of the container. // top value can be instant pixel value like 20; it can also be a percentage // value relative to container width like '20%'; and it can also be 'top', 'middle', or 'bottom'. // If the left value is set to be 'top', 'middle', or 'bottom', then the component // will be aligned automatically based on position. Top string `json:"top,omitempty"` // Distance between legend component and the right side of the container. // right value can be instant pixel value like 20; it can also be a percentage // value relative to container width like '20%'. // Adaptive by default. Right string `json:"right,omitempty"` // Distance between legend component and the bottom side of the container. // bottom value can be instant pixel value like 20; it can also be a percentage // value relative to container width like '20%'. // Adaptive by default. Bottom string `json:"bottom,omitempty"` // Data array of legend. An array item is usually a name representing string. // set Data as []string{} if you wants to hide the legend. Data interface{} `json:"data,omitempty"` // The layout orientation of legend. // Options: 'horizontal', 'vertical' Orient string `json:"orient,omitempty"` // Legend color when not selected. InactiveColor string `json:"inactiveColor,omitempty"` // State table of selected legend. // example: // var selected = map[string]bool{} // selected["series1"] = true // selected["series2"] = false Selected map[string]bool `json:"selected,omitempty"` // Selected mode of legend, which controls whether series can be toggled displaying by clicking legends. // It is enabled by default, and you may set it to be false to disabled it. // Besides, it can be set to 'single' or 'multiple', for single selection and multiple selection. SelectedMode string `json:"selectedMode,omitempty"` // Legend space around content. The unit is px. // Default values for each position are 5. // And they can be set to different values with left, right, top, and bottom. // Examples: // 1. Set padding to be 5 // padding: 5 // 2. Set the top and bottom paddings to be 5, and left and right paddings to be 10 // padding: [5, 10] // 3. Set each of the four paddings separately // padding: [ // 5, // up // 10, // right // 5, // down // 10, // left // ] Padding interface{} `json:"padding,omitempty"` // Image width of legend symbol. ItemWidth int `json:"itemWidth,omitempty"` // Image height of legend symbol. ItemHeight int `json:"itemHeight,omitempty"` // Legend X position, right/left/center X string `json:"x,omitempty"` // Legend Y position, right/left/center Y string `json:"y,omitempty"` // Width of legend component. Adaptive by default. Width string `json:"width,omitempty"` // Height of legend component. Adaptive by default. Height string `json:"height,omitempty"` // Legend marker and text aligning. // By default, it automatically calculates from component location and orientation. // When left value of this component is 'right' and orient is 'vertical', it would be aligned to 'right'. // Options: auto/left/right Align string `json:"align,omitempty"` // Legend text style. TextStyle *TextStyle `json:"textStyle,omitempty"` }
Legend is the option set for a legend component. Legend component shows symbol, color and name of different series. You can click legends to toggle displaying series in the chart. https://echarts.apache.org/en/option.html#legend
type LineChart ¶
type LineChart struct { // If stack the value. On the same category axis, the series with the same stack name would be put on top of each other. // The effect of the below example could be seen through stack switching of toolbox on the top right corner: Stack string // Whether to show as smooth curve. // If is typed in boolean, then it means whether to enable smoothing. If is // typed in number, valued from 0 to 1, then it means smoothness. A smaller value makes it less smooth. Smooth bool // Whether to show as a step line. It can be true, false. Or 'start', 'middle', 'end'. // Which will configure the turn point of step line. Step interface{} // Index of x axis to combine with, which is useful for multiple x axes in one chart. XAxisIndex int // Index of y axis to combine with, which is useful for multiple y axes in one chart. YAxisIndex int // Whether to connect the line across null points. ConnectNulls bool // Whether to show symbol. It would be shown during tooltip hover. ShowSymbol bool }
LineChart is the options set for a line chart. https://echarts.apache.org/en/option.html#series-line
type LineData ¶
type LineData struct { // Name of data item. Name string `json:"name,omitempty"` // Value of a single data item. Value interface{} `json:"value,omitempty"` // Symbol of single data. // Icon types provided by ECharts includes 'circle', 'rect', 'roundRect', 'triangle', 'diamond', 'pin', 'arrow', 'none' // It can be set to an image with 'image://url' , in which URL is the link to an image, or dataURI of an image. Symbol string `json:"symbol,omitempty"` // single data symbol size. It can be set to single numbers like 10, or // use an array to represent width and height. For example, [20, 10] means symbol width is 20, and height is10 SymbolSize int `json:"symbolSize,omitempty"` // Index of x axis to combine with, which is useful for multiple x axes in one chart. XAxisIndex int // Index of y axis to combine with, which is useful for multiple y axes in one chart. YAxisIndex int }
LineData https://echarts.apache.org/en/option.html#series-line.data
type LineStyle ¶
type LineStyle struct { // Line color Color string `json:"color,omitempty"` // Width of line. default 1 Width float32 `json:"width,omitempty"` // Type of line,options: "solid", "dashed", "dotted". default "solid" Type string `json:"type,omitempty"` // Opacity of the component. Supports value from 0 to 1, and the component will not be drawn when set to 0. Opacity float32 `json:"opacity,omitempty"` // Curveness of edge. The values from 0 to 1 could be set. // it would be larger as the the value becomes larger. default 0 Curveness float32 `json:"curveness,omitempty"` }
LineStyle is the option set for a link style component.
type LiquidChart ¶
type LiquidChart struct { // Shape of single data. // Icon types provided by ECharts includes 'circle', 'rect', 'roundRect', 'triangle', 'diamond', 'pin', 'arrow', 'none' // It can be set to an image with 'image://url' , in which URL is the link to an image, or dataURI of an image. Shape string // Whether to show outline IsShowOutline bool // Whether to stop animation IsWaveAnimation bool }
LiquidChart reference https://github.com/ecomfe/echarts-liquidfill
type LiquidData ¶
type LiquidData struct { // Name of data item. Name string `json:"name,omitempty"` // Value of a single data item. Value interface{} `json:"value,omitempty"` }
LiquidData reference https://github.com/ecomfe/echarts-liquidfill
type MapData ¶
type MapData struct { // Name of data item. Name string `json:"name,omitempty"` // Value of a single data item. Value interface{} `json:"value,omitempty"` }
MapData https://echarts.apache.org/en/option.html#series-map.data
type MarkLineNameCoordItem ¶
type MarkLineNameCoordItem struct { // Mark line name Name string `json:"name,omitempty"` // Mark line start coordinate Coordinate0 []interface{} // Mark line end coordinate Coordinate1 []interface{} // Works only when type is assigned. // It is used to state the dimension used to calculate maximum value or minimum value. // It may be the direct name of a dimension, like x, // or angle for line charts, or open, or close for candlestick charts. ValueDim string `json:"valueDim,omitempty"` }
MarkLineNameCoordItem represents coordinates for a MarkLine.
type MarkLineNameTypeItem ¶
type MarkLineNameTypeItem struct { // Mark line name. Name string `json:"name,omitempty"` // Mark line type, options: "average", "min", "max". Type string `json:"type,omitempty"` // Works only when type is assigned. // It is used to state the dimension used to calculate maximum value or minimum value. // It may be the direct name of a dimension, like x, // or angle for line charts, or open, or close for candlestick charts. ValueDim string `json:"valueDim,omitempty"` }
MarkLineNameTypeItem represents type for a MarkLine.
type MarkLineNameXAxisItem ¶
type MarkLineNameXAxisItem struct { // Mark line name Name string `json:"name,omitempty"` // X axis data XAxis interface{} `json:"xAxis,omitempty"` // Works only when type is assigned. // It is used to state the dimension used to calculate maximum value or minimum value. // It may be the direct name of a dimension, like x, // or angle for line charts, or open, or close for candlestick charts. ValueDim string `json:"valueDim,omitempty"` }
MarkLineNameXAxisItem defines a MarkLine on a X axis.
type MarkLineNameYAxisItem ¶
type MarkLineNameYAxisItem struct { // Mark line name Name string `json:"name,omitempty"` // Y axis data YAxis interface{} `json:"yAxis,omitempty"` // Works only when type is assigned. // It is used to state the dimension used to calculate maximum value or minimum value. // It may be the direct name of a dimension, like x, // or angle for line charts, or open, or close for candlestick charts. ValueDim string `json:"valueDim,omitempty"` }
MarkLineNameYAxisItem defines a MarkLine on a Y axis.
type MarkLineStyle ¶
type MarkLineStyle struct { // Symbol type at the two ends of the mark line. It can be an array for two ends, or assigned separately. // Options: "circle", "rect", "roundRect", "triangle", "diamond", "pin", "arrow", "none" Symbol []string `json:"symbol,omitempty"` // Symbol size. SymbolSize float32 `json:"symbolSize,omitempty"` // Mark line text options. Label *Label `json:"label,omitempty"` }
MarkLineStyle contains styling options for a MarkLine.
type MarkLines ¶
type MarkLines struct { Data []interface{} `json:"data,omitempty"` MarkLineStyle }
MarkLines represents a series of marklines.
type MarkPointNameCoordItem ¶
type MarkPointNameCoordItem struct { // Name of markpoint Name string `json:"name,omitempty"` // Mark point coordinate Coordinate []interface{} `json:"coord,omitempty"` // Value in mark point Value string `json:"value,omitempty"` // Works only when type is assigned. // It is used to state the dimension used to calculate maximum value or minimum value. // It may be the direct name of a dimension, like x, // or angle for line charts, or open, or close for candlestick charts. ValueDim string `json:"valueDim,omitempty"` // Mark point text options. Label *Label `json:"label,omitempty"` // ItemStyle settings ItemStyle *ItemStyle `json:"itemStyle,omitempty"` // Symbol type // Options: "circle", "rect", "roundRect", "triangle", "diamond", "pin", "arrow", "none" Symbol string `json:"symbol,omitempty"` // Symbol size. SymbolSize float32 `json:"symbolSize,omitempty"` // Symbol rotate. SymbolRotate float32 `json:"symbolRotate,omitempty"` }
MarkPointNameCoordItem represents coordinates for a MarkPoint.
type MarkPointNameTypeItem ¶
type MarkPointNameTypeItem struct { // Name of markpoint Name string `json:"name,omitempty"` // Mark point type, options: "average", "min", "max". Type string `json:"type,omitempty"` // Works only when type is assigned. // It is used to state the dimension used to calculate maximum value or minimum value. // It may be the direct name of a dimension, like x, // or angle for line charts, or open, or close for candlestick charts. ValueDim string `json:"valueDim,omitempty"` // ItemStyle settings ItemStyle *ItemStyle `json:"itemStyle,omitempty"` }
MarkPointNameTypeItem represents type for a MarkPoint.
type MarkPointStyle ¶
type MarkPointStyle struct { // Symbol type at the two ends of the mark line. It can be an array for two ends, or assigned separately. // Options: "circle", "rect", "roundRect", "triangle", "diamond", "pin", "arrow", "none" Symbol []string `json:"symbol,omitempty"` // Symbol size. SymbolSize float32 `json:"symbolSize,omitempty"` // Symbol rotate. SymbolRotate float32 `json:"symbolRotate,omitempty"` // Mark point text options. Label *Label `json:"label,omitempty"` }
MarkPointStyle contains styling options for a MarkPoint.
type MarkPoints ¶
type MarkPoints struct { Data []interface{} `json:"data,omitempty"` MarkPointStyle }
MarkPoints represents a series of markpoints.
type ParallelAxis ¶
type ParallelAxis struct { // Dimension index of coordinate axis. Dim int `json:"dim,omitempty"` // Name of axis. Name string `json:"name,omitempty"` // The maximum value of axis. // It can be set to a special value 'dataMax' so that the minimum value on this axis is set to be the maximum label. // It will be automatically computed to make sure axis tick is equally distributed when not set. // In category axis, it can also be set as the ordinal number. Max interface{} `json:"max,omitempty"` // Compulsively set segmentation interval for axis. Inverse bool `json:"inverse,omitempty"` // Location of axis name. Options: "start", "middle", "center", "end" // default "end" NameLocation string `json:"nameLocation,omitempty"` // Type of axis. // Options: // "value":Numerical axis, suitable for continuous data. // "category" Category axis, suitable for discrete category data. Category data can be auto retrieved from series. // "log" Log axis, suitable for log data. Type string `json:"type,omitempty"` // Category data,works on (type: "category"). Data interface{} `json:"data,omitempty"` }
ParallelAxis is the option set for a parallel axis.
type ParallelComponent ¶
type ParallelComponent struct { // Distance between parallel component and the left side of the container. // Left value can be instant pixel value like 20. // It can also be a percentage value relative to container width like '20%'; // and it can also be 'left', 'center', or 'right'. // If the left value is set to be 'left', 'center', or 'right', // then the component will be aligned automatically based on position. Left string `json:"left,omitempty"` // Distance between parallel component and the top side of the container. // Top value can be instant pixel value like 20. // It can also be a percentage value relative to container width like '20%'. // and it can also be 'top', 'middle', or 'bottom'. // If the left value is set to be 'top', 'middle', or 'bottom', // then the component will be aligned automatically based on position. Top string `json:"top,omitempty"` // Distance between parallel component and the right side of the container. // Right value can be instant pixel value like 20. // It can also be a percentage value relative to container width like '20%'. Right string `json:"right,omitempty"` // Distance between parallel component and the bottom side of the container. // Bottom value can be instant pixel value like 20. // It can also be a percentage value relative to container width like '20%'. Bottom string `json:"bottom,omitempty"` }
ParallelComponent is the option set for parallel component.
type ParallelData ¶
type ParallelData struct { // Name of data item. Name string `json:"name,omitempty"` // Value of a single data item. Value interface{} `json:"value,omitempty"` }
ParallelData https://echarts.apache.org/en/option.html#series-parallel.data
type PieChart ¶
type PieChart struct { // Whether to show as Nightingale chart, which distinguishes data through radius. There are 2 optional modes: // * 'radius' Use central angle to show the percentage of data, radius to show data size. // * 'area' All the sectors will share the same central angle, the data size is shown only through radiuses. RoseType string // Center position of Pie chart, the first of which is the horizontal position, and the second is the vertical position. // Percentage is supported. When set in percentage, the item is relative to the container width, // and the second item to the height. // // Example: // // Set to absolute pixel values ->> center: [400, 300] // Set to relative percent ->> center: ['50%', '50%'] Center interface{} // Radius of Pie chart. Value can be: // * number: Specify outside radius directly. // * string: For example, '20%', means that the outside radius is 20% of the viewport // size (the little one between width and height of the chart container). // // Array.<number|string>: The first item specifies the inside radius, and the // second item specifies the outside radius. Each item follows the definitions above. Radius interface{} }
PieChart is the option set for a pie chart. https://echarts.apache.org/en/option.html#series-pie
type PieData ¶
type PieData struct { // Name of data item. Name string `json:"name,omitempty"` // Value of a single data item. Value interface{} `json:"value,omitempty"` // Whether the data item is selected. Selected bool `json:"selected,omitempty"` // The label configuration of a single sector. Label *Label `json:"label,omitempty"` // Graphic style of , emphasis is the style when it is highlighted, like being hovered by mouse, or highlighted via legend connect. ItemStyle *ItemStyle `json:"itemStyle,omitempty"` // tooltip settings in this series data. Tooltip *Tooltip `json:"tooltip,omitempty"` }
PieData https://echarts.apache.org/en/option.html#series-pie.data
type Polar ¶
type Polar struct { ID string `json:"id,omitempty"` Zlevel int `json:"zlevel,omitempty"` Z int `json:"z,omitempty"` Center [2]string `json:"center,omitempty"` Radius [2]string `json:"radius,omitempty"` Tooltip Tooltip `json:"tooltip,omitempty"` }
Polar Bar options
type PolarAxisBase ¶
type PolarAxisBase struct { ID string `json:"id,omitempty"` PolarIndex int `json:"polarIndex,omitempty"` StartAngle float64 `json:"startAngle,omitempty"` Type string `json:"type,omitempty"` BoundaryGap bool `json:"boundaryGap,omitempty"` Min float64 `json:"min,omitempty"` Max float64 `json:"max,omitempty"` Scale bool `json:"scale,omitempty"` SplitNumber int `json:"splitNumber,omitempty"` MinInterval float64 `json:"minInterval,omitempty"` MaxInterval float64 `json:"maxInterval,omitempty"` Interval float64 `json:"interval,omitempty"` LogBase float64 `json:"logBase,omitempty"` Silent bool `json:"silent,omitempty"` TriggerEvent bool `json:"triggerEvent,omitempty"` }
type RadarComponent ¶
type RadarComponent struct { // Indicator of radar chart, which is used to assign multiple variables(dimensions) in radar chart. Indicator []*Indicator `json:"indicator,omitempty"` // Radar render type, in which 'polygon' and 'circle' are supported. Shape string `json:"shape,omitempty"` // Segments of indicator axis. // default 5 SplitNumber int `json:"splitNumber,omitempty"` // Center position of , the first of which is the horizontal position, and the second is the vertical position. // Percentage is supported. When set in percentage, the item is relative to the container width and height. Center interface{} `json:"center,omitempty"` // Split area of axis in grid area. SplitArea *SplitArea `json:"splitArea,omitempty"` // Split line of axis in grid area. SplitLine *SplitLine `json:"splitLine,omitempty"` }
RadarComponent is the option set for a radar component. https://echarts.apache.org/en/option.html#radar
type RadarData ¶
type RadarData struct { // Name of data item. Name string `json:"name,omitempty"` // Value of a single data item. Value interface{} `json:"value,omitempty"` }
RadarData https://echarts.apache.org/en/option.html#series-radar
type RadiusAxis ¶
type RadiusAxis struct { PolarAxisBase Name string `json:"name,omitempty"` NameLocation string `json:"nameLocation,omitempty"` NameTextStyle TextStyle `json:"nameTextStyle,omitempty"` NameGap float64 `json:"nameGap,omitempty"` NameRadius float64 `json:"nameRotate,omitempty"` Inverse bool `json:"inverse,omitempty"` }
type RippleEffect ¶
type RippleEffect struct { // The period duration of animation, in seconds. // default 4(s) Period float32 `json:"period,omitempty"` // The maximum zooming scale of ripples in animation. // default 2.5 Scale float32 `json:"scale,omitempty"` // The brush type for ripples. options: "stroke" and "fill". // default "fill" BrushType string `json:"brushType,omitempty"` }
RippleEffect is the option set for the ripple effect.
type SankeyLink ¶
type SankeyLink struct { // The name of source node of edge Source interface{} `json:"source,omitempty"` // The name of target node of edge Target interface{} `json:"target,omitempty"` // The value of edge, which decides the width of edge. Value float32 `json:"value,omitempty"` }
SankeyLink represents relationship between two data nodes. https://echarts.apache.org/en/option.html#series-sankey.links
type SankeyNode ¶
type SankeyNode struct { // Name of data item. Name string `json:"name,omitempty"` // Value of a single data item. Value string `json:"value,omitempty"` // Depth of the node within the chart Depth *int `json:"depth,omitempty"` // ItemStyle settings in this series data. ItemStyle *ItemStyle `json:"itemStyle,omitempty"` }
SankeyNode represents a data node. https://echarts.apache.org/en/option.html#series-sankey.nodes
type ScatterChart ¶
type ScatterChart struct { // Index of x axis to combine with, which is useful for multiple x axes in one chart. XAxisIndex int // Index of x axis to combine with, which is useful for multiple y axes in one chart. YAxisIndex int }
ScatterChart is the option set for a scatter chart. https://echarts.apache.org/en/option.html#series-scatter
type ScatterData ¶
type ScatterData struct { // Name of data item. Name string `json:"name,omitempty"` // Value of a single data item. Value interface{} `json:"value,omitempty"` // Symbol Symbol string `json:"symbol,omitempty"` // SymbolSize SymbolSize int `json:"symbolSize,omitempty"` // SymbolRotate SymbolRotate int `json:"symbolRotate,omitempty"` // Index of x axis to combine with, which is useful for multiple x axes in one chart. XAxisIndex int `json:"xAxisIndex,omitempty"` // Index of y axis to combine with, which is useful for multiple y axes in one chart. YAxisIndex int `json:"yAxisIndex,omitempty"` }
ScatterData https://echarts.apache.org/en/option.html#series-scatter.data
type ScatterSeries ¶
type SingleAxis ¶
type SingleAxis struct { // The minimum value of axis. // It can be set to a special value 'dataMin' so that the minimum value on this axis is set to be the minimum label. // It will be automatically computed to make sure axis tick is equally distributed when not set. Min interface{} `json:"min,omitempty"` // The maximum value of axis. // It can be set to a special value 'dataMax' so that the minimum value on this axis is set to be the maximum label. // It will be automatically computed to make sure axis tick is equally distributed when not set. Max interface{} `json:"max,omitempty"` // Type of axis. // Option: // * 'value': Numerical axis, suitable for continuous data. // * 'category': Category axis, suitable for discrete category data. // Category data can be auto retrieved from series.data or dataset.source, // or can be specified via xAxis.data. // * 'time' Time axis, suitable for continuous time series data. As compared to value axis, // it has a better formatting for time and a different tick calculation method. For example, // it decides to use month, week, day or hour for tick based on the range of span. // * 'log' Log axis, suitable for log data. Type string `json:"type,omitempty"` // Distance between grid component and the left side of the container. // left value can be instant pixel value like 20; it can also be a percentage // value relative to container width like '20%'; and it can also be 'left', 'center', or 'right'. // If the left value is set to be 'left', 'center', or 'right', // then the component will be aligned automatically based on position. Left string `json:"left,omitempty"` // Distance between grid component and the right side of the container. // right value can be instant pixel value like 20; it can also be a percentage // value relative to container width like '20%'. Right string `json:"right,omitempty"` // Distance between grid component and the top side of the container. // top value can be instant pixel value like 20; it can also be a percentage // value relative to container width like '20%'; and it can also be 'top', 'middle', or 'bottom'. // If the left value is set to be 'top', 'middle', or 'bottom', // then the component will be aligned automatically based on position. Top string `json:"top,omitempty"` // Distance between grid component and the bottom side of the container. // bottom value can be instant pixel value like 20; it can also be a percentage // value relative to container width like '20%'. Bottom string `json:"bottom,omitempty"` }
SingleAxis is the option set for single axis. https://echarts.apache.org/en/option.html#singleAxis
type SplitArea ¶
type SplitArea struct { // Set this to true to show the splitArea. Show bool `json:"show"` // Split area style. AreaStyle *AreaStyle `json:"areaStyle,omitempty"` }
SplitArea is the option set for a split area.
type SplitLine ¶
type SplitLine struct { // Set this to true to show the splitLine. Show bool `json:"show"` // Split line style. LineStyle *LineStyle `json:"lineStyle,omitempty"` // Align split line with label, which is available only when boundaryGap is set to be true in category axis. AlignWithLabel bool `json:"alignWithLabel,omitempty"` }
SplitLine is the option set for a split line.
type SunBurstData ¶
type SunBurstData struct { // Name of data item. Name string `json:"name,omitempty"` // Value of data item. Value float64 `json:"value,omitempty"` // sub item of data item Children []*SunBurstData `json:"children,omitempty"` }
SunBurstData data
type SunburstChart ¶
type SunburstChart struct { // The action of clicking a sector NodeClick string `json:"nodeClick,omitempty"` // Sorting method that sectors use based on value Sort string `json:"sort,omitempty"` // If there is no name, whether need to render it. RenderLabelForZeroData bool `json:"renderLabelForZeroData"` // Selected mode SelectedMode bool `json:"selectedMode"` // Whether to enable animation. Animation bool `json:"animation"` // Whether to set graphic number threshold to animation AnimationThreshold int `json:"animationThreshold,omitempty"` // Duration of the first animation AnimationDuration int `json:"animationDuration,omitempty"` // Easing method used for the first animation AnimationEasing string `json:"animationEasing,omitempty"` // Delay before updating the first animation AnimationDelay int `json:"animationDelay,omitempty"` // Time for animation to complete AnimationDurationUpdate int `json:"animationDurationUpdate,omitempty"` // Easing method used for animation. AnimationEasingUpdate string `json:"animationEasingUpdate,omitempty"` // Delay before updating animation AnimationDelayUpdate int `json:"animationDelayUpdate,omitempty"` }
SunburstChart https://echarts.apache.org/en/option.html#series-sunburst
type TextStyle ¶
type TextStyle struct { // Font color Color string `json:"color,omitempty"` // Font style // Options: 'normal', 'italic', 'oblique' FontStyle string `json:"fontStyle,omitempty"` // Font size FontSize int `json:"fontSize,omitempty"` // Font family the main title font family. // Options: "sans-serif", 'serif' , 'monospace', 'Arial', 'Courier New', 'Microsoft YaHei', ... FontFamily string `json:"fontFamily,omitempty"` // Padding title space around content. // The unit is px. Default values for each position are 5. // And they can be set to different values with left, right, top, and bottom. Padding interface{} `json:"padding,omitempty"` // compatible for WordCloud Normal *TextStyle `json:"normal,omitempty"` }
TextStyle is the option set for a text style component.
type ThemeRiverData ¶
type ThemeRiverData struct { // the time attribute of time and theme. Date string `json:"date,omitempty"` // the value of an event or theme at a time point. Value float64 `json:"value,omitempty"` // the name of an event or theme. Name string `json:"name,omitempty"` }
ThemeRiverData https://echarts.apache.org/en/option.html#series-themeRiver
func (ThemeRiverData) ToList ¶
func (trd ThemeRiverData) ToList() [3]interface{}
ToList converts the themeriver data to a list
type Title ¶
type Title struct { // The main title text, supporting \n for newlines. Title string `json:"text,omitempty"` // TextStyle of the main title. TitleStyle *TextStyle `json:"textStyle,omitempty"` // The hyper link of main title text. Link string `json:"link,omitempty"` // Subtitle text, supporting \n for newlines. Subtitle string `json:"subtext,omitempty"` // TextStyle of the sub title. SubtitleStyle *TextStyle `json:"subtextStyle,omitempty"` // The hyper link of sub title text. SubLink string `json:"sublink,omitempty"` // Open the hyper link of main title in specified tab. // options: // 'self' opening it in current tab // 'blank' opening it in a new tab Target string `json:"target,omitempty"` // Distance between title component and the top side of the container. // top value can be instant pixel value like 20; it can also be a percentage // value relative to container width like '20%'; and it can also be 'top', 'middle', or 'bottom'. // If the left value is set to be 'top', 'middle', or 'bottom', // then the component will be aligned automatically based on position. Top string `json:"top,omitempty"` // Distance between title component and the bottom side of the container. // bottom value can be instant pixel value like 20; // it can also be a percentage value relative to container width like '20%'. // Adaptive by default. Bottom string `json:"bottom,omitempty"` // Distance between title component and the left side of the container. // left value can be instant pixel value like 20; it can also be a percentage // value relative to container width like '20%'; and it can also be 'left', 'center', or 'right'. // If the left value is set to be 'left', 'center', or 'right', // then the component will be aligned automatically based on position. Left string `json:"left,omitempty"` // Distance between title component and the right side of the container. // right value can be instant pixel value like 20; it can also be a percentage // value relative to container width like '20%'. // Adaptive by default. Right string `json:"right,omitempty"` }
Title is the option set for a title component. https://echarts.apache.org/en/option.html#title
type ToolBoxFeature ¶
type ToolBoxFeature struct { // Save as image tool SaveAsImage *ToolBoxFeatureSaveAsImage `json:"saveAsImage,omitempty"` // Data brush Brush *ToolBoxFeatureBrush `json:"brush"` // Data area zooming, which only supports rectangular coordinate by now. DataZoom *ToolBoxFeatureDataZoom `json:"dataZoom,omitempty"` // Data view tool, which could display data in current chart and updates chart after being edited. DataView *ToolBoxFeatureDataView `json:"dataView,omitempty"` // Restore configuration item. Restore *ToolBoxFeatureRestore `json:"restore,omitempty"` }
ToolBoxFeature is a feature component under toolbox. https://echarts.apache.org/en/option.html#toolbox
type ToolBoxFeatureBrush ¶
type ToolBoxFeatureBrush struct { //Icons used, whose values are: // 'rect': Enabling selecting with rectangle area. // 'polygon': Enabling selecting with any shape. // 'lineX': Enabling horizontal selecting. // 'lineY': Enabling vertical selecting. // 'keep': Switching between single selecting and multiple selecting. The latter one can select multiple areas, while the former one cancels previous selection. // 'clear': Clearing all selection. Type []string `json:"type,omitempty"` }
ToolBoxFeatureBrush brush-selecting icon. https://echarts.apache.org/en/option.html#toolbox.feature.brush
type ToolBoxFeatureDataView ¶
type ToolBoxFeatureDataView struct { // Whether to show the tool. Show bool `json:"show"` // title for the tool. Title string `json:"title,omitempty"` // There are 3 names in data view // you could set them like this: []string["data view", "turn off", "refresh"] Lang []string `json:"lang"` // Background color of the floating layer in data view. BackgroundColor string `json:"backgroundColor"` }
ToolBoxFeatureDataView https://echarts.apache.org/en/option.html#toolbox.feature.dataView
type ToolBoxFeatureDataZoom ¶
type ToolBoxFeatureDataZoom struct { // Whether to show the tool. Show bool `json:"show"` //Defines which yAxis should be controlled. By default, it controls all y axes. //If it is set to be false, then no y axis is controlled. //If it is set to be then it controls axis with axisIndex of 3. //If it is set to be [0, 3], it controls the x-axes with axisIndex of 0 and 3. YAxisIndex interface{} `json:"yAxisIndex,omitempty"` // Restored and zoomed title text. // m["zoom"] = "area zooming" // m["back"] = "restore area zooming" Title map[string]string `json:"title"` }
ToolBoxFeatureDataZoom https://echarts.apache.org/en/option.html#toolbox.feature.dataZoom
type ToolBoxFeatureRestore ¶
type ToolBoxFeatureRestore struct { // Whether to show the tool. Show bool `json:"show"` // title for the tool. Title string `json:"title,omitempty"` }
ToolBoxFeatureRestore https://echarts.apache.org/en/option.html#toolbox.feature.restore
type ToolBoxFeatureSaveAsImage ¶
type ToolBoxFeatureSaveAsImage struct { // Whether to show the tool. Show bool `json:"show"` // toolbox.feature.saveAsImage. type = 'png' // File suffix of the image saved. // If the renderer is set to be 'canvas' when chart initialized (default), t // hen 'png' (default) and 'jpeg' are supported. // If the renderer is set to be 'svg' when when chart initialized, then only 'svg' is supported // for type ('svg' type is supported since v4.8.0). Type string `json:"png,omitempty"` // Name to save the image, whose default value is title.text. Name string `json:"name,omitempty"` // Title for the tool. Title string `json:"title,omitempty"` }
ToolBoxFeatureSaveAsImage is the option for saving chart as image. https://echarts.apache.org/en/option.html#toolbox.feature.saveAsImage
type Toolbox ¶
type Toolbox struct { // Whether to show toolbox component. Show bool `json:"show"` // The layout orientation of toolbox's icon. // Options: 'horizontal','vertical' Orient string `json:"orient,omitempty"` // Distance between toolbox component and the left side of the container. // left value can be instant pixel value like 20; it can also be a percentage // value relative to container width like '20%'; and it can also be 'left', 'center', or 'right'. // If the left value is set to be 'left', 'center', or 'right', then the component // will be aligned automatically based on position. Left string `json:"left,omitempty"` // Distance between toolbox component and the top side of the container. // top value can be instant pixel value like 20; it can also be a percentage // value relative to container width like '20%'; and it can also be 'top', 'middle', or 'bottom'. // If the left value is set to be 'top', 'middle', or 'bottom', then the component // will be aligned automatically based on position. Top string `json:"top,omitempty"` // Distance between toolbox component and the right side of the container. // right value can be instant pixel value like 20; it can also be a percentage // value relative to container width like '20%'. // Adaptive by default. Right string `json:"right,omitempty"` // Distance between toolbox component and the bottom side of the container. // bottom value can be instant pixel value like 20; it can also be a percentage // value relative to container width like '20%'. // Adaptive by default. Bottom string `json:"bottom,omitempty"` // The configuration item for each tool. // Besides the tools we provide, user-defined toolbox is also supported. Feature *ToolBoxFeature `json:"feature,omitempty"` }
Toolbox is the option set for a toolbox component. https://echarts.apache.org/en/option.html#toolbox
type Tooltip ¶
type Tooltip struct { // Whether to show the tooltip component, including tooltip floating layer and axisPointer. Show bool `json:"show"` // Type of triggering. // Options: // * 'item': Triggered by data item, which is mainly used for charts that // don't have a category axis like scatter charts or pie charts. // * 'axis': Triggered by axes, which is mainly used for charts that have category axes, // like bar charts or line charts. // * 'none': Trigger nothing. Trigger string `json:"trigger,omitempty"` // Conditions to trigger tooltip. Options: // * 'mousemove': Trigger when mouse moves. // * 'click': Trigger when mouse clicks. // * 'mousemove|click': Trigger when mouse clicks and moves. // * 'none': Do not triggered by 'mousemove' and 'click'. Tooltip can be triggered and hidden // manually by calling action.tooltip.showTip and action.tooltip.hideTip. // It can also be triggered by axisPointer.handle in this case. TriggerOn string `json:"triggerOn,omitempty"` // The content formatter of tooltip's floating layer which supports string template and callback function. // // 1. String template // The template variables are {a}, {b}, {c}, {d} and {e}, which stands for series name, // data name and data value and ect. When trigger is set to be 'axis', there may be data from multiple series. // In this time, series index can be refereed as {a0}, {a1}, or {a2}. // {a}, {b}, {c}, {d} have different meanings for different series types: // // * Line (area) charts, bar (column) charts, K charts: {a} for series name, // {b} for category name, {c} for data value, {d} for none; // * Scatter (bubble) charts: {a} for series name, {b} for data name, {c} for data value, {d} for none; // * Map: {a} for series name, {b} for area name, {c} for merging data, {d} for none; // * Pie charts, gauge charts, funnel charts: {a} for series name, {b} for data item name, // {c} for data value, {d} for percentage. // // 2. Callback function // The format of callback function: // (params: Object|Array, ticket: string, callback: (ticket: string, html: string)) => string // The first parameter params is the data that the formatter needs. Its format is shown as follows: // { // componentType: 'series', // // Series type // seriesType: string, // // Series index in option.series // seriesIndex: number, // // Series name // seriesName: string, // // Data name, or category name // name: string, // // Data index in input data array // dataIndex: number, // // Original data as input // data: Object, // // Value of data. In most series it is the same as data. // // But in some series it is some part of the data (e.g., in map, radar) // value: number|Array|Object, // // encoding info of coordinate system // // Key: coord, like ('x' 'y' 'radius' 'angle') // // value: Must be an array, not null/undefined. Contain dimension indices, like: // // { // // x: [2] // values on dimension index 2 are mapped to x axis. // // y: [0] // values on dimension index 0 are mapped to y axis. // // } // encode: Object, // // dimension names list // dimensionNames: Array<String>, // // data dimension index, for example 0 or 1 or 2 ... // // Only work in `radar` series. // dimensionIndex: number, // // Color of data // color: string, // // // the percentage of pie chart // percent: number, // } Formatter string `json:"formatter,omitempty"` // Configuration item for axisPointer AxisPointer *AxisPointer `json:"axisPointer,omitempty"` }
Tooltip is the option set for a tooltip component. https://echarts.apache.org/en/option.html#tooltip
type TreeChart ¶
type TreeChart struct { // The layout of the tree, which can be orthogonal and radial. // * 'orthogonal' refer to the horizontal and vertical direction. // * 'radial' refers to the view that the root node as the center and each layer of nodes as the ring. Layout string // The direction of the orthogonal layout in the tree diagram. // * 'from left to right' or 'LR' // * 'from right to left' or 'RL' // * 'from top to bottom' or 'TB' // * 'from bottom to top' or 'BT' Orient string `json:"orient,omitempty"` // Whether to enable mouse zooming and translating. false by default. // If either zooming or translating is wanted, it can be set to 'scale' or 'move'. // Otherwise, set it to be true to enable both. Roam bool `json:"roam"` // Subtree collapses and expands interaction, default true. ExpandAndCollapse bool `json:"expandAndCollapse,omitempty"` // The initial level (depth) of the tree. The root node is the 0th layer, then the first layer, the second layer, ... , until the leaf node. // This configuration item is primarily used in conjunction with collapsing and expansion interactions. // The purpose is to prevent the nodes from obscuring each other. If set as -1 or null or undefined, all nodes are expanded. InitialTreeDepth int `json:"initialTreeDepth,omitempty"` // The style setting of the text label in a single bar. Label *Label `json:"label,omitempty"` // Leaf node special configuration, the leaf node and non-leaf node label location is different. Leaves *TreeLeaves `json:"leaves,omitempty"` // Distance between tree component and the sides of the container. // value can be instant pixel value like 20; // It can also be a percentage value relative to container width like '20%'; Left string `json:"left,omitempty"` Right string `json:"right,omitempty"` Top string `json:"top,omitempty"` Bottom string `json:"bottom,omitempty"` }
type TreeData ¶
type TreeData struct { // Name of the data item. Name string `json:"name,omitempty"` // Value of the data item. Value int `json:"value,omitempty"` Children []*TreeData `json:"children,omitempty"` // Symbol of node of this category. // Icon types provided by ECharts includes // 'circle', 'rect', 'roundRect', 'triangle', 'diamond', 'pin', 'arrow', 'none' // It can be set to an image with 'image://url' , in which URL is the link to an image, or dataURI of an image. Symbol string `json:"symbol,omitempty"` // node of this category symbol size. It can be set to single numbers like 10, // or use an array to represent width and height. For example, [20, 10] means symbol width is 20, and height is10. SymbolSize interface{} `json:"symbolSize,omitempty"` // If set as `true`, the node is collapsed in the initialization. Collapsed bool `json:"collapsed,omitempty"` // LineStyle settings in this series data. LineStyle *LineStyle `json:"lineStyle,omitempty"` // ItemStyle settings in this series data. ItemStyle *ItemStyle `json:"itemStyle,omitempty"` }
type TreeLeaves ¶
type TreeLeaves struct { // The style setting of the text label in a single bar. Label *Label `json:"label,omitempty"` // LineStyle settings in this series data. LineStyle *LineStyle `json:"lineStyle,omitempty"` // ItemStyle settings in this series data. ItemStyle *ItemStyle `json:"itemStyle,omitempty"` // Emphasis settings in this series data. Emphasis *Emphasis `json:"emphasis,omitempty"` }
Leaf node special configuration, the leaf node and non-leaf node label location is different.
type TreeMapChart ¶
type TreeMapChart struct { // Whether to enable animation. Animation bool `json:"animation"` // leafDepth represents how many levels are shown at most. For example, when leafDepth is set to 1, only one level will be shown. // leafDepth is null/undefined by default, which means that "drill down" is disabled. LeafDepth int `json:"leafDeapth,omitempty"` // Roam describes whether to enable mouse zooming and translating. false by default. Roam bool `json:"roam"` // Label decribes the style of the label in each node. Label *Label `json:"label,omitempty"` // UpperLabel is used to specify whether show label when the treemap node has children. UpperLabel *UpperLabel `json:"upperLabel,omitempty"` // ColorMappingBy specifies the rule according to which each node obtain color from color list. ColorMappingBy string `json:"colorMappingBy,omitempty"` // Levels provide configration for each node level Levels *[]TreeMapLevel `json:"levels,omitempty"` // Distance between treemap component and the sides of the container. // value can be instant pixel value like 20; // It can also be a percentage value relative to container width like '20%'; Left string `json:"left,omitempty"` Right string `json:"right,omitempty"` Top string `json:"top,omitempty"` Bottom string `json:"bottom,omitempty"` }
type TreeMapLevel ¶
type TreeMapLevel struct { // Color defines a list for a node level, if empty, retreived from global color list. Color []string `json:"color,omitempty"` // ColorAlpha indicates the range of tranparent rate (color alpha) for nodes in a level. ColorAlpha []float32 `json:"colorAlpha,omitempty"` // ColorSaturation indicates the range of saturation (color alpha) for nodes in a level. ColorSaturation []float32 `json:"colorSaturation,omitempty"` // ColorMappingBy specifies the rule according to which each node obtain color from color list. ColorMappingBy string `json:"colorMappingBy,omitempty"` // UpperLabel is used to specify whether show label when the treemap node has children. UpperLabel *UpperLabel `json:"upperLabel,omitempty"` // ItemStyle settings in this series data. ItemStyle *ItemStyle `json:"itemStyle,omitempty"` // Emphasis settings in this series data. Emphasis *Emphasis `json:"emphasis,omitempty"` }
TreeMapLevel is level specific configuration.
type TreeMapNode ¶
type TreeMapNode struct { // Name of the tree node item. Name string `json:"name"` // Value of the tree node item. Value int `json:"value,omitempty"` Children []TreeMapNode `json:"children,omitempty"` }
type UpperLabel ¶
type UpperLabel struct { // Show is true to show upper label. Show bool `json:"show,omitempty"` // Position is the label's position. // * top // * left // * right // * bottom // * inside // * insideLeft // * insideRight // * insideTop // * insideBottom // * insideTopLeft // * insideBottomLeft // * insideTopRight // * insideBottomRight Position string `json:"position,omitempty"` // Distance to the host graphic element. // It is valid only when position is string value (like 'top', 'insideRight'). Distance float32 `json:"distance,omitempty"` // Rotate label, from -90 degree to 90, positive value represents rotate anti-clockwise. Rotate float32 `json:"rotate,omitempty"` // Whether to move text slightly. For example: [30, 40] means move 30 horizontally and move 40 vertically. Offset []float32 `json:"offset,omitempty"` // Color is the text color Color string `json:"color,omitempty"` // FontStyle // * "normal" // * "italic" // * "oblique" FontStyle string `json:"fontStyle,omitempty"` // FontWeight can be the string or a number // * "normal" // * "bold" // * "bolder" // * "lighter" // 100 | 200 | 300| 400 ... FontWeight interface{} `json:"fontWeight,omitempty"` // FontSize FontSize float32 `json:"fontSize,omitempty"` // Align is a horizontal alignment of text, automatic by default. // * "left" // * "center" // * "right" Align string `json:"align,omitempty"` // Align is a horizontal alignment of text, automatic by default. // * "top" // * "middle" // * "bottom" VerticalAlign string `json:"verticalAlign,omitempty"` // Padding of the text fragment, for example: // Padding: [3, 4, 5, 6]: represents padding of [top, right, bottom, left]. // Padding: 4: represents padding: [4, 4, 4, 4]. // Padding: [3, 4]: represents padding: [3, 4, 3, 4]. Padding interface{} `json:"padding,omitempty"` // Width of text block Width float32 `json:"width,omitempty"` // Height of text block Height float32 `json:"height,omitempty"` // Upper label formatter, which supports string template and callback function. // In either form, \n is supported to represent a new line. // String template, Model variation includes: // // {a}: series name. // {b}: the name of a data item. // {c}: the value of a data item. // {@xxx}: the value of a dimension named"xxx", for example,{@product}refers the value of"product"` dimension. // {@[n]}: the value of a dimension at the index ofn, for example,{@[3]}` refers the value at dimensions[3]. Formatter string `json:"formatter,omitempty"` }
UpperLabel is used to specify whether show label when the treemap node has children. https://echarts.apache.org/en/option.html#series-treemap.upperLabel
type ViewControl ¶
type ViewControl struct { // Whether to rotate automatically. AutoRotate bool `json:"autoRotate,omitempty"` // Rotate Speed, (angle/s). // default 10 AutoRotateSpeed float32 `json:"autoRotateSpeed,omitempty"` }
ViewControl contains options for view controlling.
type VisualMap ¶
type VisualMap struct { // Mapping type. // Options: "continuous", "piecewise" Type string `json:"type,omitempty" default:"continuous"` // Whether show handles, which can be dragged to adjust "selected range". Calculable bool `json:"calculable"` // Specify the min dataValue for the visualMap component. // [visualMap.min, visualMax.max] make up the domain of visual mapping. Min float32 `json:"min,omitempty"` // Specify the max dataValue for the visualMap component. // [visualMap.min, visualMax.max] make up the domain of visual mapping. Max float32 `json:"max,omitempty"` // Specify selected range, that is, the dataValue corresponding to the two handles. Range []float32 `json:"range,omitempty"` // The label text on both ends, such as ['High', 'Low']. Text []string `json:"text,omitempty"` // Define visual channels that will mapped from dataValues that are in selected range. InRange *VisualMapInRange `json:"inRange,omitempty"` // Whether to show visualMap-piecewise component. If set as false, // visualMap-piecewise component will not show, // but it can still perform visual mapping from dataValue to visual channel in chart. Show bool `json:"show"` // Distance between visualMap component and the left side of the container. // left value can be instant pixel value like 20; it can also be a percentage // value relative to container width like '20%'; and it can also be 'left', 'center', or 'right'. // If the left value is set to be 'left', 'center', or 'right', // then the component will be aligned automatically based on position. Left string `json:"left,omitempty"` // Distance between visualMap component and the right side of the container. // right value can be instant pixel value like 20; it can also be a percentage // value relative to container width like '20%'. Right string `json:"right,omitempty"` // Distance between visualMap component and the top side of the container. // top value can be instant pixel value like 20; it can also be a percentage // value relative to container width like '20%'; and it can also be 'top', 'middle', or 'bottom'. // If the left value is set to be 'top', 'middle', or 'bottom', // then the component will be aligned automatically based on position. Top string `json:"top,omitempty"` // Distance between visualMap component and the bottom side of the container. // bottom value can be instant pixel value like 20; it can also be a percentage // value relative to container width like '20%'. Bottom string `json:"bottom,omitempty"` }
VisualMap is a type of component for visual encoding, which maps the data to visual channels. https://echarts.apache.org/en/option.html#visualMap
type VisualMapInRange ¶
type VisualMapInRange struct { // Color Color []string `json:"color,omitempty"` // Symbol type at the two ends of the mark line. It can be an array for two ends, or assigned separately. // Options: "circle", "rect", "roundRect", "triangle", "diamond", "pin", "arrow", "none" Symbol string `json:"symbol,omitempty"` // Symbol size. SymbolSize float32 `json:"symbolSize,omitempty"` }
VisualMapInRange is a visual map instance in a range.
type WordCloudChart ¶
type WordCloudChart struct { // Shape of WordCloud // Optional: "circle", "rect", "roundRect", "triangle", "diamond", "pin", "arrow" Shape string // range of font size SizeRange []float32 // range of font rotation angle RotationRange []float32 }
WordCloudChart is the option set for a word cloud chart.
type WordCloudData ¶
type WordCloudData struct { // Name of data item. Name string `json:"name,omitempty"` // Value of a single data item. Value interface{} `json:"value,omitempty"` }
WordCloudData
type XAxis ¶
type XAxis struct { // Name of axis. Name string `json:"name,omitempty"` // Type of axis. // Option: // * 'value': Numerical axis, suitable for continuous data. // * 'category': Category axis, suitable for discrete category data. // Category data can be auto retrieved from series.data or dataset.source, // or can be specified via xAxis.data. // * 'time' Time axis, suitable for continuous time series data. As compared to value axis, // it has a better formatting for time and a different tick calculation method. For example, // it decides to use month, week, day or hour for tick based on the range of span. // * 'log' Log axis, suitable for log data. Type string `json:"type,omitempty"` // Set this to false to prevent the axis from showing. Show bool `json:"show,omitempty"` // Category data, available in type: 'category' axis. Data interface{} `json:"data,omitempty"` // Number of segments that the axis is split into. Note that this number serves only as a // recommendation, and the true segments may be adjusted based on readability. // This is unavailable for category axis. SplitNumber int `json:"splitNumber,omitempty"` // It is available only in numerical axis, i.e., type: 'value'. // It specifies whether not to contain zero position of axis compulsively. // When it is set to be true, the axis may not contain zero position, // which is useful in the scatter chart for both value axes. // This configuration item is unavailable when the min and max are set. Scale bool `json:"scale,omitempty"` // The minimum value of axis. // It can be set to a special value 'dataMin' so that the minimum value on this axis is set to be the minimum label. // It will be automatically computed to make sure axis tick is equally distributed when not set. Min interface{} `json:"min,omitempty"` // The maximum value of axis. // It can be set to a special value 'dataMax' so that the minimum value on this axis is set to be the maximum label. // It will be automatically computed to make sure axis tick is equally distributed when not set. Max interface{} `json:"max,omitempty"` // Minimum gap between split lines. For 'time' axis, MinInterval is in unit of milliseconds. MinInterval float64 `json:"minInterval,omitempty"` // Maximum gap between split lines. For 'time' axis, MaxInterval is in unit of milliseconds. MaxInterval float64 `json:"maxInterval,omitempty"` // The index of grid which the x axis belongs to. Defaults to be in the first grid. // default 0 GridIndex int `json:"gridIndex,omitempty"` // Split area of X axis in grid area. SplitArea *SplitArea `json:"splitArea,omitempty"` // Split line of X axis in grid area. SplitLine *SplitLine `json:"splitLine,omitempty"` // Settings related to axis label. AxisLabel *AxisLabel `json:"axisLabel,omitempty"` // Settings related to axis tick. AxisTick *AxisTick `json:"axisTick,omitempty"` }
XAxis is the option set for X axis. https://echarts.apache.org/en/option.html#xAxis
type XAxis3D ¶
type XAxis3D struct { // Whether to display the x-axis. Show bool `json:"show,omitempty"` // The name of the axis. Name string `json:"name,omitempty"` // The index of the grid3D component used by the axis. The default is to use the first grid3D component. Grid3DIndex int `json:"grid3DIndex,omitempty"` // The type of the axis. // Optional: // * 'value' The value axis. Suitable for continuous data. // * 'category' The category axis. Suitable for the discrete category data. // For this type, the category data must be set through data. // * 'time' The timeline. Suitable for the continuous timing data. The time axis has a // time format compared to the value axis, and the scale calculation is also different. // For example, the scale of the month, week, day, and hour ranges can be determined according to the range of the span. // * 'log' Logarithmic axis. Suitable for the logarithmic data. Type string `json:"type,omitempty"` // The minimum value of axis. // It can be set to a special value 'dataMin' so that the minimum value on this axis is set to be the minimum label. // It will be automatically computed to make sure the axis tick is equally distributed when not set. // In the category axis, it can also be set as the ordinal number. For example, // if a category axis has data: ['categoryA', 'categoryB', 'categoryC'], // and the ordinal 2 represents 'categoryC'. Moreover, it can be set as a negative number, like -3. Min interface{} `json:"min,omitempty"` // The maximum value of the axis. // It can be set to a special value 'dataMax' so that the minimum value on this axis is set to be the maximum label. // It will be automatically computed to make sure the axis tick is equally distributed when not set. // In the category axis, it can also be set as the ordinal number. For example, if a category axis // has data: ['categoryA', 'categoryB', 'categoryC'], and the ordinal 2 represents 'categoryC'. // Moreover, it can be set as a negative number, like -3. Max interface{} `json:"max,omitempty"` // Category data, available in type: 'category' axis. // If type is specified as 'category', but axis.data is not specified, axis.data will be auto // collected from series.data. It brings convenience, but we should notice that axis.data provides // then value range of the 'category' axis. If it is auto collected from series.data, // Only the values appearing in series.data can be collected. For example, // if series.data is empty, nothing will be collected. Data interface{} `json:"data,omitempty"` }
XAxis3D contains options for X axis in the 3D coordinate.
type YAxis ¶
type YAxis struct { // Name of axis. Name string `json:"name,omitempty"` // Type of axis. // Option: // * 'value': Numerical axis, suitable for continuous data. // * 'category': Category axis, suitable for discrete category data. // Category data can be auto retrieved from series.data or dataset.source, // or can be specified via xAxis.data. // * 'time' Time axis, suitable for continuous time series data. As compared to value axis, // it has a better formatting for time and a different tick calculation method. For example, // it decides to use month, week, day or hour for tick based on the range of span. // * 'log' Log axis, suitable for log data. Type string `json:"type,omitempty"` // Set this to false to prevent the axis from showing. Show bool `json:"show,omitempty"` // Category data, available in type: 'category' axis. Data interface{} `json:"data,omitempty"` // Number of segments that the axis is split into. Note that this number serves only as a // recommendation, and the true segments may be adjusted based on readability. // This is unavailable for category axis. SplitNumber int `json:"splitNumber,omitempty"` // It is available only in numerical axis, i.e., type: 'value'. // It specifies whether not to contain zero position of axis compulsively. // When it is set to be true, the axis may not contain zero position, // which is useful in the scatter chart for both value axes. // This configuration item is unavailable when the min and max are set. Scale bool `json:"scale,omitempty"` // The minimum value of axis. // It can be set to a special value 'dataMin' so that the minimum value on this axis is set to be the minimum label. // It will be automatically computed to make sure axis tick is equally distributed when not set. Min interface{} `json:"min,omitempty"` // The maximum value of axis. // It can be set to a special value 'dataMax' so that the minimum value on this axis is set to be the maximum label. // It will be automatically computed to make sure axis tick is equally distributed when not set. Max interface{} `json:"max,omitempty"` // The index of grid which the Y axis belongs to. Defaults to be in the first grid. // default 0 GridIndex int `json:"gridIndex,omitempty"` // Split area of Y axis in grid area. SplitArea *SplitArea `json:"splitArea,omitempty"` // Split line of Y axis in grid area. SplitLine *SplitLine `json:"splitLine,omitempty"` // Settings related to axis label. AxisLabel *AxisLabel `json:"axisLabel,omitempty"` // Settings related to axis line. AxisLine *AxisLine `json:"axisLine,omitempty"` }
YAxis is the option set for Y axis. https://echarts.apache.org/en/option.html#yAxis
type YAxis3D ¶
type YAxis3D struct { // Whether to display the y-axis. Show bool `json:"show,omitempty"` // The name of the axis. Name string `json:"name,omitempty"` // The index of the grid3D component used by the axis. The default is to use the first grid3D component. Grid3DIndex int `json:"grid3DIndex,omitempty"` // The type of the axis. // Optional: // * 'value' The value axis. Suitable for continuous data. // * 'category' The category axis. Suitable for the discrete category data. // For this type, the category data must be set through data. // * 'time' The timeline. Suitable for the continuous timing data. The time axis has a // time format compared to the value axis, and the scale calculation is also different. // For example, the scale of the month, week, day, and hour ranges can be determined according to the range of the span. // * 'log' Logarithmic axis. Suitable for the logarithmic data. Type string `json:"type,omitempty"` // The minimum value of axis. // It can be set to a special value 'dataMin' so that the minimum value on this axis is set to be the minimum label. // It will be automatically computed to make sure the axis tick is equally distributed when not set. // In the category axis, it can also be set as the ordinal number. For example, // if a category axis has data: ['categoryA', 'categoryB', 'categoryC'], // and the ordinal 2 represents 'categoryC'. Moreover, it can be set as a negative number, like -3. Min interface{} `json:"min,omitempty"` // The maximum value of the axis. // It can be set to a special value 'dataMax' so that the minimum value on this axis is set to be the maximum label. // It will be automatically computed to make sure the axis tick is equally distributed when not set. // In the category axis, it can also be set as the ordinal number. For example, if a category axis // has data: ['categoryA', 'categoryB', 'categoryC'], and the ordinal 2 represents 'categoryC'. // Moreover, it can be set as a negative number, like -3. Max interface{} `json:"max,omitempty"` // Category data, available in type: 'category' axis. // If type is specified as 'category', but axis.data is not specified, axis.data will be auto // collected from series.data. It brings convenience, but we should notice that axis.data provides // then value range of the 'category' axis. If it is auto collected from series.data, // Only the values appearing in series.data can be collected. For example, // if series.data is empty, nothing will be collected. Data interface{} `json:"data,omitempty"` }
YAxis3D contains options for Y axis in the 3D coordinate.
type ZAxis3D ¶
type ZAxis3D struct { // Whether to display the z-axis. Show bool `json:"show,omitempty"` // The name of the axis. Name string `json:"name,omitempty"` // The index of the grid3D component used by the axis. The default is to use the first grid3D component. Grid3DIndex int `json:"grid3DIndex,omitempty"` // The type of the axis. // Optional: // * 'value' The value axis. Suitable for continuous data. // * 'category' The category axis. Suitable for the discrete category data. // For this type, the category data must be set through data. // * 'time' The timeline. Suitable for the continuous timing data. The time axis has a // time format compared to the value axis, and the scale calculation is also different. // For example, the scale of the month, week, day, and hour ranges can be determined according to the range of the span. // * 'log' Logarithmic axis. Suitable for the logarithmic data. Type string `json:"type,omitempty"` // The minimum value of axis. // It can be set to a special value 'dataMin' so that the minimum value on this axis is set to be the minimum label. // It will be automatically computed to make sure the axis tick is equally distributed when not set. // In the category axis, it can also be set as the ordinal number. For example, // if a category axis has data: ['categoryA', 'categoryB', 'categoryC'], // and the ordinal 2 represents 'categoryC'. Moreover, it can be set as a negative number, like -3. Min interface{} `json:"min,omitempty"` // The maximum value of the axis. // It can be set to a special value 'dataMax' so that the minimum value on this axis is set to be the maximum label. // It will be automatically computed to make sure the axis tick is equally distributed when not set. // In the category axis, it can also be set as the ordinal number. For example, if a category axis // has data: ['categoryA', 'categoryB', 'categoryC'], and the ordinal 2 represents 'categoryC'. // Moreover, it can be set as a negative number, like -3. Max interface{} `json:"max,omitempty"` // Category data, available in type: 'category' axis. // If type is specified as 'category', but axis.data is not specified, axis.data will be auto // collected from series.data. It brings convenience, but we should notice that axis.data provides // then value range of the 'category' axis. If it is auto collected from series.data, // Only the values appearing in series.data can be collected. For example, // if series.data is empty, nothing will be collected. Data interface{} `json:"data,omitempty"` }
ZAxis3D contains options for Z axis in the 3D coordinate.