PieSeries.js revision 0abcc4acb057a275ed7f098295ecd5de79b6a510
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp/**
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * PieSeries visualizes data as a circular chart divided into wedges which represent data as a
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * percentage of a whole.
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp *
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * @class PieSeries
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @constructor
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @extends MarkerSeries
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTrippY.PieSeries = Y.Base.create("pieSeries", Y.MarkerSeries, [], {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp /**
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp * @private
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp _categoryDisplayName: null,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp /**
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp * @private
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp _valueDisplayName: null,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp /**
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp * @private
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp addListeners: function()
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp var categoryAxis = this.get("categoryAxis"),
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp valueAxis = this.get("valueAxis");
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp if(categoryAxis)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp categoryAxis.after("dataReady", Y.bind(this._categoryDataChangeHandler, this));
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp categoryAxis.after("dataUpdate", Y.bind(this._categoryDataChangeHandler, this));
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp if(valueAxis)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp valueAxis.after("dataReady", Y.bind(this._valueDataChangeHandler, this));
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp valueAxis.after("dataUpdate", Y.bind(this._valueDataChangeHandler, this));
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp this.after("categoryAxisChange", this.categoryAxisChangeHandler);
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp this.after("valueAxisChange", this.valueAxisChangeHandler);
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp this.after("stylesChange", this._updateHandler);
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp /**
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @private
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp validate: function()
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp this.draw();
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp this._renderered = true;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp /**
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @private
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp _categoryAxisChangeHandler: function(e)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp var categoryAxis = this.get("categoryAxis");
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp categoryAxis.after("dataReady", Y.bind(this._categoryDataChangeHandler, this));
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp categoryAxis.after("dataUpdate", Y.bind(this._categoryDataChangeHandler, this));
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp /**
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @private
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp _valueAxisChangeHandler: function(e)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp var valueAxis = this.get("valueAxis");
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp valueAxis.after("dataReady", Y.bind(this._valueDataChangeHandler, this));
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp valueAxis.after("dataUpdate", Y.bind(this._valueDataChangeHandler, this));
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp /**
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * Constant used to generate unique id.
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp *
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * @private
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp */
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp GUID: "pieseries",
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp /**
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * @private (protected)
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * Handles updating the graph when the x < code>Axis</code> values
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * change.
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp */
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp _categoryDataChangeHandler: function(event)
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp if(this._rendered && this.get("categoryKey") && this.get("valueKey"))
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp {
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp this.draw();
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp }
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp /**
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * @private (protected)
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * Handles updating the chart when the y <code>Axis</code> values
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * change.
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp */
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp _valueDataChangeHandler: function(event)
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp if(this._rendered && this.get("categoryKey") && this.get("valueKey"))
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp this.draw();
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp }
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp /**
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @protected
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp *
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * Draws the series. Overrides the base implementation.
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp *
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @method draw
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp */
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp draw: function()
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp var graph = this.get("graph"),
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp w = graph.get("width"),
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp h = graph.get("height");
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp if(isFinite(w) && isFinite(h) && w > 0 && h > 0)
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp this._rendered = true;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp this.drawSeries();
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp this.fire("drawingComplete");
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp }
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp },
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp /**
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp * @private
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp */
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp drawPlots: function()
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp var values = this.get("valueAxis").getDataByKey(this.get("valueKey")).concat(),
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp catValues = this.get("categoryAxis").getDataByKey(this.get("categoryKey")).concat(),
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp totalValue = 0,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp itemCount = values.length,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp styles = this.get("styles").marker,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp fillColors = styles.fill.colors,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp fillAlphas = styles.fill.alphas || ["1"],
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp borderColors = styles.border.colors,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp borderWeights = [styles.border.weight],
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp borderAlphas = [styles.border.alpha],
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp tbw = borderWeights.concat(),
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp tbc = borderColors.concat(),
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp tba = borderAlphas.concat(),
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp tfc,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp tfa,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp padding = styles.padding,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp graph = this.get("graph"),
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp w = graph.get("width") - (padding.left + padding.right),
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp h = graph.get("height") - (padding.top + padding.bottom),
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp startAngle = -90,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp halfWidth = w / 2,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp halfHeight = h / 2,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp radius = Math.min(halfWidth, halfHeight),
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp i = 0,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp value,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp angle = 0,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp lc,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp la,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp lw,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp wedgeStyle,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp marker,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp graphOrder = this.get("graphOrder"),
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp mnode;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp for(; i < itemCount; ++i)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp value = values[i];
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp values.push(value);
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp if(!isNaN(value))
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp totalValue += value;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp tfc = fillColors ? fillColors.concat() : null;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp tfa = fillAlphas ? fillAlphas.concat() : null;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp this._createMarkerCache();
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp for(i = 0; i < itemCount; i++)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp value = values[i];
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp if(totalValue === 0)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp angle = 360 / values.length;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp else
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp angle = 360 * (value / totalValue);
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp angle = Math.round(angle);
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp if(tfc && tfc.length < 1)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp tfc = fillColors.concat();
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp if(tfa && tfa.length < 1)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp tfa = fillAlphas.concat();
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp if(tbw && tbw.length < 1)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp tbw = borderWeights.concat();
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp if(tbw && tbc.length < 1)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp tbc = borderColors.concat();
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp if(tba && tba.length < 1)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp tba = borderAlphas.concat();
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp lw = tbw ? tbw.shift() : null;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp lc = tbc ? tbc.shift() : null;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp la = tba ? tba.shift() : null;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp startAngle += angle;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp wedgeStyle = {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp border: {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp color:lc,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp weight:lw,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp alpha:la
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp fill: {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp color:tfc ? tfc.shift() : this._getDefaultColor(i, "slice"),
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp alpha:tfa ? tfa.shift() : null
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp shape: "wedge",
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp props: {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp arc: angle,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp radius: radius,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp startAngle: startAngle,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp x: halfWidth,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp y: halfHeight
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp width: w,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp height: h
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp };
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp marker = this.getMarker(wedgeStyle, graphOrder, i);
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp mnode = Y.one(marker.parent);
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp this._clearMarkerCache();
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp /**
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @protected
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp *
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * Resizes and positions markers based on a mouse interaction.
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp *
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @method updateMarkerState
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @param {String} type state of the marker
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @param {Number} i index of the marker
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp updateMarkerState: function(type, i)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp if(this._markers[i])
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp {
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp var state = this._getState(type),
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp markerStyles,
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp indexStyles,
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp marker = this._markers[i],
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp graphicNode = this._graphicNodes[i],
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp styles = this.get("styles").marker;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp markerStyles = state == "off" || !styles[state] ? styles : styles[state];
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp indexStyles = this._mergeStyles(markerStyles, {});
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp indexStyles.fill.color = indexStyles.fill.colors[i % indexStyles.fill.colors.length];
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp indexStyles.fill.alpha = indexStyles.fill.alphas[i % indexStyles.fill.alphas.length];
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp marker.update(indexStyles);
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp if(state == "over" || state == "down")
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp Y.one(graphicNode).setStyle("zIndex", 3);
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp else
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp Y.one(graphicNode).setStyle("zIndex", 2);
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp /**
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp * @private
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp */
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp _createMarker: function(styles, order, index)
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp {
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp var graphic = this.get("graphic"),
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp cfg = Y.clone(styles),
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp marker = graphic.getShape(cfg);
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp marker.addClass("yui3-seriesmarker");
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp marker.node.setAttribute("id", "series_" + order + "_" + index);
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp return marker;
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp },
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp /**
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp * @private
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp */
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp _clearMarkerCache: function()
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp {
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp var len = this._markerCache.length,
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp i = 0,
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp marker;
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp for(; i < len; ++i)
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp {
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp marker = this._markerCache[i];
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp if(marker && marker.node && marker.parentNode)
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp {
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp marker.parentNode.removeChild(marker.node);
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp }
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp }
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp this._markerCache = [];
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp },
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp /**
c6624d55071139dbc6ebd4252f6c7ee46a5800a9Tripp * @private
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp _getPlotDefaults: function()
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp var defs = {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp padding:{
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp top: 0,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp left: 0,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp right: 0,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp bottom: 0
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp fill:{
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp alphas:["1"]
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp border: {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp weight: 0,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp alpha: 1
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp };
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp defs.fill.colors = this._defaultSliceColors;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp defs.border.colors = this._defaultBorderColors;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp return defs;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp /**
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp * @private
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp _defaultLineColors:["#426ab3", "#d09b2c", "#000000", "#b82837", "#b384b5", "#ff7200", "#779de3", "#cbc8ba", "#7ed7a6", "#007a6c"],
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp /**
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp * @private
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp _defaultFillColors:["#6084d0", "#eeb647", "#6c6b5f", "#d6484f", "#ce9ed1", "#ff9f3b", "#93b7ff", "#e0ddd0", "#94ecba", "#309687"],
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp /**
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp * @private
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp _defaultBorderColors:["#205096", "#b38206", "#000000", "#94001e", "#9d6fa0", "#e55b00", "#5e85c9", "#adab9e", "#6ac291", "#006457"],
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp /**
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp * @private
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp _defaultSliceColors: ["#66007f", "#a86f41", "#295454", "#996ab2", "#e8cdb7", "#90bdbd","#000000","#c3b8ca", "#968373", "#678585"],
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp /**
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp * @private
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp * @description Colors used if style colors are not specified
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp _getDefaultColor: function(index, type)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp var colors = {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp line: this._defaultLineColors,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp fill: this._defaultFillColors,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp border: this._defaultBorderColors,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp slice: this._defaultSliceColors
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp col = colors[type],
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp l = col.length;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp index = index || 0;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp if(index >= l)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp index = index % l;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp type = type || "fill";
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp return colors[type][index];
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp}, {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp ATTRS: {
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp /**
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * Read-only attribute indicating the type of series.
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp *
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @attribute type
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @type String
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @default pie
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp type: {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp value: "pie"
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp /**
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * Order of this instance of this <code>type</code>.
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp *
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @attribute order
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @type Number
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp order: {},
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp /**
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * Reference to the <code>Graph</code> in which the series is drawn into.
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp *
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @attribute graph
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @type Graph
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp graph: {},
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp /**
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp * Reference to the <code>Axis</code> instance used for assigning
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * category values to the graph.
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp *
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @attribute categoryAxis
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @type Axis
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp categoryAxis: {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp value: null,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp validator: function(value)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp return value !== this.get("categoryAxis");
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp /**
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * Reference to the <code>Axis</code> instance used for assigning
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * series values to the graph.
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp *
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @attribute categoryAxis
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @type Axis
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp valueAxis: {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp value: null,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp validator: function(value)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp return value !== this.get("valueAxis");
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp /**
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp * Indicates which array to from the hash of value arrays in
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp * the category <code>Axis</code> instance.
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp categoryKey: {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp value: null,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp validator: function(value)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp return value !== this.get("categoryKey");
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp /**
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp * Indicates which array to from the hash of value arrays in
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp * the value <code>Axis</code> instance.
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp valueKey: {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp value: null,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp validator: function(value)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp return value !== this.get("valueKey");
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp /**
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * Name used for for displaying category data
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp *
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @attribute categoryDisplayName
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @type String
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp categoryDisplayName: {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp setter: function(val)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp this._categoryDisplayName = val;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp return val;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp getter: function()
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp return this._categoryDisplayName || this.get("categoryKey");
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp /**
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * Name used for for displaying value data
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp *
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @attribute valueDisplayName
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @type String
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp valueDisplayName: {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp setter: function(val)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp this._valueDisplayName = val;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp return val;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp getter: function()
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp return this._valueDisplayName || this.get("valueKey");
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp /**
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * @private
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp slices: null
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp /**
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * Style properties used for drawing markers. This attribute is inherited from <code>MarkerSeries</code>. Below are the default values:
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * <dl>
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * <dt>fill</dt><dd>A hash containing the following values:
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * <dl>
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * <dt>colors</dt><dd>An array of colors to be used for the marker fills. The color for each marker is retrieved from the
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * array below:<br/>
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * <code>["#66007f", "#a86f41", "#295454", "#996ab2", "#e8cdb7", "#90bdbd","#000000","#c3b8ca", "#968373", "#678585"]</code>
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * </dd>
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * <dt>alphas</dt><dd>An array of alpha references (Number from 0 to 1) indicating the opacity of each marker fill. The default value is [1].</dd>
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * </dl>
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * </dd>
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * <dt>border</dt><dd>A hash containing the following values:
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * <dl>
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * <dt>color</dt><dd>An array of colors to be used for the marker borders. The color for each marker is retrieved from the
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * array below:<br/>
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * <code>["#205096", "#b38206", "#000000", "#94001e", "#9d6fa0", "#e55b00", "#5e85c9", "#adab9e", "#6ac291", "#006457"]</code>
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * <dt>alpha</dt><dd>Number from 0 to 1 indicating the opacity of the marker border. The default value is 1.</dd>
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * <dt>weight</dt><dd>Number indicating the width of the border. The default value is 1.</dd>
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * </dl>
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * </dd>
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * <dt>over</dt><dd>hash containing styles for markers when highlighted by a <code>mouseover</code> event. The default
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * values for each style is null. When an over style is not set, the non-over value will be used. For example,
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * the default value for <code>marker.over.fill.color</code> is equivalent to <code>marker.fill.color</code>.</dd>
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * </dl>
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp *
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * @attribute styles
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp * @type Object
0abcc4acb057a275ed7f098295ecd5de79b6a510Tripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp});