Important version information!

You are browsing a class reference for Version 2 of the JavaScript Charts. If you are using Version 3 (current), please click here.

AmXYChart

Inheritance: AmXYChartAmRectangularChartAmCoordinateChartAmChart

AmXYChart is the class you have to use for XY/Bubble/Scatter chart types. The chart supports simple and logarithmic scales, it can have multiple value axes.

Example:

var chartData = [{x:10, y:14, value:59},
          {x:5, y:3, value:50},
          {x:-10, y:-3, value:19},
          {x:-6, y:5, value:65},
          {x:15, y:-4, value:92},
          {x:13, y:1, value:8},
          {x:1, y:6, value:35}];

var chart = new AmCharts.AmXYChart();        
chart.pathToImages = "../../amcharts/javascript/images/";
chart.dataProvider = chartData;
chart.marginLeft = 35;
chart.startDuration = 1.5;

var xAxis = new AmCharts.ValueAxis();
xAxis.position = "left";
xAxis.autoGridCount = true;
chart.addValueAxis(xAxis);

var yAxis = new AmCharts.ValueAxis();
yAxis.position = "bottom";
yAxis.autoGridCount = true;
chart.addValueAxis(yAxis);                

var graph = new AmCharts.AmGraph();
graph.valueField = "value";
graph.xField = "x";
graph.yField = "y";
graph.lineAlpha = 0;
graph.bullet = "round";
chart.addGraph(graph);

var chartCursor = new AmCharts.ChartCursor();
chart.addChartCursor(chartCursor);

var chartScrollbar = new AmCharts.ChartScrollbar();
chartScrollbar.hideResizeGrips = false;
chart.addChartScrollbar(chartScrollbar);
                              
chart.write("chartdiv");

Properties Hide inherited

PropertyTypeDefaultDescription
angleNumber0The angle of the 3D part of plot area. This creates a 3D effect (if the "depth3D" is > 0).
autoMarginOffsetNumber10Space left from axis labels/title to the chart's outside border, if autoMargins set to true.
autoMarginsBooleantrueSpecifies if margins of a chart should be calculated automatically so that labels of axes would fit. The chart will adjust only margins with axes. Other margins will use values set with marginRight, marginTop, marginLeft and marginBottom properties.
backgroundColorString#FFFFFFBackground color. You should set backgroundAlpha to >0 value in order background to be visible. We recommend setting background color directly on a chart's DIV instead of using this property.
balloonAmBalloonAmBalloonThe chart creates AmBalloon class itself. If you want to customize balloon, get balloon instance using this property, and then change balloon's properties.
borderAlphaNumber0Opacity of chart's border. Value range is 0 - 1.
borderColorString#000000Color of chart's border. You should set borderAlpha >0 in order border to be visible. We recommend setting border color directly on a chart's DIV instead of using this property.
chartCursorChartCursor Chart cursor.
chartScrollbarChartScrollbar Chart scrollbar.
colorString#000000Text color.
colorsArray['#FF6600', '#FCD202', '#B0DE09', '#0D8ECF', '#2A0CD0', '#CD0D74', '#CC0000', '#00CC00', '#0000CC', '#DDDDDD', '#999999', '#333333', '#990000']Specifies the colors of the graphs if the lineColor of a graph is not set. It there are more graphs then colors in this array, the chart picks random color.
dataProviderArrayArray of data objects, for example: [{country:"US", value:524},{country:"UK", value:624},{country:"Lithuania", value:824}]. You can have any number of fields and use any field names. In case of AmMap, data provider should be MapData object.
depth3DNumber0The depth of the 3D part of plot area. This creates a 3D effect (if the "angle" is > 0).
fontFamilyStringVerdanaFont family.
fontSizeNumber11Font size.
graphsArray The array of graphs belonging to this chart. To add/remove graph use addGraph/removeGraph methods instead of adding/removing graphs directly to array.
heightNumber/String100%Height of a chart. "100%" means the chart's height will be equal to it's container's (DIV) height and will resize if height of the container changes. Set a number instead of percents if your chart's size needs to be fixed.
hideXScrollbarBooleanfalseSpecifies if Scrollbar of X axis (horizontal) should be hidden.
hideYScrollbarBooleanfalseSpecifies if Scrollbar of Y axis (vertical) should be hidden.
legendDivDIV objectReference to the div of the legend.
marginBottomNumber20Number of pixels between the container's bottom border and plot area. This space can be used for bottom axis' values. If autoMargin is true and bottom side has axis, this property is ignored.
marginLeftNumber20Number of pixels between the container's left border and plot area. This space can be used for left axis' values. If autoMargin is true and left side has axis, this property is ignored.
marginRightNumber20Number of pixels between the container's right border and plot area. This space can be used for Right axis' values. If autoMargin is true and right side has axis, this property is ignored.
marginsUpdatedBooleanfalseFlag which should be set to false if you need margins to be recalculated on next chart.validateNow() call.
marginTopNumber20Number of pixels between the container's top border and plot area. This space can be used for top axis' values. If autoMargin is true and top side has axis, this property is ignored.
maxZoomFactorNumber20Maximum zoom factor of the chart.
numberFormatterObject{precision:-1, decimalSeparator:'.', thousandsSeparator:','}Object with precision, decimalSeparator and thousandsSeparator set which will be used for number formatting. Precision set to -1 means that values won't be rounded.
panEventsEnabledBooleanfalseThis setting affects touch-screen devices only. If a chart is on a page, and panEventsEnabled are set to true, the page won't move if the user touches the chart first. If a chart is big enough and occupies all the screen of your touch device, the user won’t be able to move the page at all. That's why the default value is "false". If you think that selecting/panning the chart or moving/pinching the map is a primary purpose of your users, you should set panEventsEnabled to true.
pathToImagesStringSpecifies path to the folder where images like resize grips, lens and similar are.
percentFormatterObject{precision:2, decimalSeparator:'.', thousandsSeparator:','}Object with precision, decimalSeparator and thousandsSeparator set which will be used for formatting percent values.
plotAreaBorderAlphaNumber0The opacity of plot area's border. Value range is 0 - 1.
plotAreaBorderColorString#000000The color of the plot area's border. Note, the it is invisible by default, as plotAreaBorderAlpha default value is 0. Set it to a value higher than 0 to make it visible.
plotAreaFillAlphasNumber0Opacity of plot area. Plural form is used to keep the same property names as our Flex charts'. Flex charts can accept array of numbers to generate gradients. Although you can set array here, only first value of this array will be used.
plotAreaFillColorsString/Array#FFFFFFYou can set both one color if you need a solid color or array of colors to generate gradients, for example: ["#000000", "#0000CC"]
plotAreaGradientAngleNumber0If you are using gradients to fill the plot area, you can use this property to set gradient angle. The only allowed values are horizontal and vertical: 0, 90, 180, 270.
prefixesOfBigNumbersArray[{number:1e+3,prefix:"k"},{number:1e+6,prefix:"M"},{number:1e+9,prefix:"G"},{number:1e+12,prefix:"T"},{number:1e+15,prefix:"P"},{number:1e+18,prefix:"E"},{number:1e+21,prefix:"Z"},{number:1e+24,prefix:"Y"}]Prefixes which are used to make big numbers shorter: 2M instead of 2000000, etc. Prefixes are used on value axes and in the legend. To enable prefixes, set usePrefixes property to true.
prefixesOfSmallNumbersArray[{number:1e-24, prefix:"y"},{number:1e-21, prefix:"z"},{number:1e-18, prefix:"a"},{number:1e-15, prefix:"f"},{number:1e-12, prefix:"p"},{number:1e-9, prefix:"n"},{number:1e-6, prefix:"μ"},{number:1e-3, prefix:"m"}]Prefixes which are used to make small numbers shorter: 2μ instead of 0.000002, etc. Prefixes are used on value axes and in the legend. To enable prefixes, set usePrefixes property to true.
sequencedAnimationBooleantrueSpecifies whether the animation should be sequenced or all objects should appear at once.
startAlphaNumber1The initial opacity of the column/line. If you set startDuration to a value higher than 0, the columns/lines will fade in from startAlpha. Value range is 0 - 1.
startDurationNumber0Duration of the animation, in seconds.
startEffectStringelasticAnimation effect. Possible values are ">", "<", elastic" and "bounce".
trendLinesArrayArray of trend lines added to a chart. You can add trend lines to a chart using this array or access already existing trend lines
urlTargetString_selfTarget of url.
usePrefixesBooleanfalseIf true, prefixes will be used for big and small numbers. You can set arrays of prefixes via prefixesOfSmallNumbers and prefixesOfBigNumbers properties.
valueAxesArray The array of value axes. To add/remove value axis use addValueAxis/removeValueAxis methods instead of adding/removing axes directly to array. Chart creates one value axis automatically, so if you need only one value axis, you don't need to create it.
versionStringRead-only. Indicates current version of a script.
zoomOutButtonObject{backgroundColor:'#b2e1ff',backgroundAlpha:1}It's a simple object containing information about zoom-out button. Other available properties of this object are fontSize and color. color specifies text color of a button.
zoomOutTextStringShow allText in the zoom-out button.

Methods Hide inherited

NameParametersReturnsDescription
addChartCursor(cursor)cursor - instace of ChartCursorAdds a ChartCursor object to a chart
addChartScrollbar(scrollbar)scrollbar - instance of ChartScrollbarAdds a ChartScrollbar to a chart
addGraph(graph)graph - instance of AmGraph Adds a graph to the chart.
addLabel(x, y, text, align, size, color, rotation, alpha, bold, url)x - horizontal coordinate y - vertical coordinate text - label's text align - alignment (left/right/center) size - text size color - text color rotation - angle of rotation alpha - label alpha bold - specifies if text is bold (true/false), url - url of a Adds a label on a chart. You can use it for labeling axes, adding chart title, etc. x and y coordinates can be set in number, percent, or a number with ! in front of it - coordinate will be calculated from right or bottom instead of left or top.
addLegend(legend, legendDivID)legend - AmLegend, legendDivID - id or reference to legend div (optional)Adds a legend to the chart. By default, you don't need to create div for your legend, however if you want it to be positioned in some different way, you can create div anywhere you want and pass id or reference to your div as a second parameter. (NOTE: This method will not work on StockPanel.)
addListener(type, handler)type - string like 'dataUpdated' (should be listed in 'events' section of this class or classes which extend this class). handler - function which is called when event happensAdds event listener to the object.
addTitle(text, size, color, alpha, bold)text - text of a title size - font size color - title color alpha - title opacity bold - boolean value indicating if title should be bold.Adds title to the top of the chart. Pie, Radar positions are updated so that they won't overlap. Plot area of Serial/XY chart is also updated unless autoMargins property is set to false. You can add any number of titles - each of them will be placed in a new line. To remove titles, simply clear titles array: chart.titles = []; and call chart.validateNow() method.
addTrendLine(trendLine)trendLineAdds a TrendLine to a chart. You should call chart.validateNow() after this method is called in order the trend line to be visible.
addValueAxis(axis)axis - instance of ValueAxis Adds value axis to the chart. One value axis is created automatically, so if you don't want to change anything or add more value axes, you don't need to add it.
animateAgain() You can trigger the animation of the chart.
clear()Clears the chart area, intervals, etc.
clearLabels()Removes all labels added to the chart.
getGraphById(id)id - graph's id, StringAmGraphReturns graph by id.
getValueAxisById(id)id - value axis' id, StringValueAxisReturns value axis by id.
hideGraph(graph)graph - instance of AmGraph Hide the graph (if it is visible). Usually this method is called from the Legend, when you click on the legend marker.
hideGraphsBalloon(graph)graph - instance of AmGraph Hide value balloon of a graph. Usually this method is called from the Legend, when you click on the legend text.
highlightGraph(graph)graph - instance of AmGraph Highlight the graph. Usually this method is called from the Legend, when you roll-over the legend entry.
invalidateSize()Use this method to force the chart to resize to it's current container size.
removeChartCursor() Removes cursor from the chart
removeChartScrollbar() Removes scrollbar from the chart
removeGraph(graph)graph - instance of AmGraph Removes graph from the chart.
removeLegend()Removes chart's legend.
removeListener(chart, type, handler)chart - chart object, type - event name, handler - methodRemoves event listener from chart object.
removeTrendLine(trendLine)trendLineRemoves a trend line from a chart. You should call chart.validateNow() in order the changes to be visible.
removeValueAxis(axis)axis - instance of ValueAxis Removes value axis from the chart. When you remove value axis, all graphs assigned to this axis are also removed.
showGraph(graph)graph - instance of AmGraph Show the graph (if it is hidden). Usually this method is called from the Legend, when you click on the legend marker.
showGraphsBalloon(graph)graph - instance of AmGraph Show value balloon of a graph. Usually this method is called from the Legend, when you click on the legend text.
unhighlightGraph(graph)graph - instance of AmGraph UnhighlightGraph the graph. Usually this method is called from the Legend, when you roll-out the legend entry.
validateData()This method should be called after data in your data provider changed or a new array was set to dataProvider. After calling this method the chart will parse data and redraw.
validateNow()This method should be called after you changed one or more properties of any class. The chart will redraw after this method is called.
write(container)container - id of a DIV or DIV object which will hold the chartAdds chart to the specified DIV.
zoomOut()Zooms out, charts shows all available data.

Events Hide inherited

NameEvent objectDescription
clickGraph{type:"clickGraph", graph:AmGraph, chart:AmChart}Dispatched when user clicks on a graph.
clickGraphItem{type:"clickGraphItem", graph:AmGraph, item:GraphDataItem, index:Number, chart:AmChart}Dispatched when user clicks on the data item (column/bullet)
dataUpdated{type:"dataUpdated", chart:AmChart}Dispatched when chart is build for the first time or after validateData() method was called.
init{type:"init", chart:AmChart}Dispatched when chart is build for the first time.
rendered{type:"rendered", chart:AmChart}Dispatched when the chart is build for the first time.
rightClickGraphItem{type:"rightClickGraphItem", graph:AmGraph, item:GraphDataItem, index:Number, chart:AmChart}Dispatched when user right-clicks on the data item (column/bullet)
rollOutGraphItem{type:"rollOutGraphItem", graph:AmGraph, item:GraphDataItem, index:Number, chart:AmChart}Dispatched when user rolls-out of the data item (column/bullet)
rollOverGraphItem{type:"rollOverGraphItem", graph:AmGraph, item:GraphDataItem, index:Number, chart:AmChart}Dispatched when user rolls-over data item (column/bullet)