8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp/**
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * The StackedBarSeries renders bar chart in which series are stacked horizontally to show
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * their contribution to the cumulative total.
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp *
a75ebc38c1de401b679953a9b87bd323f0f48d02Tripp * @module charts
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @class StackedBarSeries
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @extends BarSeries
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @uses StackingUtil
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @constructor
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTrippY.StackedBarSeries = Y.Base.create("stackedBarSeries", Y.BarSeries, [Y.StackingUtil], {
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp /**
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @protected
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp *
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * Draws the series.
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp *
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @method drawSeries
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp drawSeries: function()
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp if(this.get("xcoords").length < 1)
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp {
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp return;
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
2a322140e93579c14e2037ff2eb3e62eaa86c9dfTripp var isNumber = Y_Lang.isNumber,
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp style = Y.clone(this.get("styles").marker),
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp w = style.width,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp h = style.height,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp xcoords = this.get("xcoords"),
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp ycoords = this.get("ycoords"),
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp i = 0,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp len = xcoords.length,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp top = ycoords[0],
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp type = this.get("type"),
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp graph = this.get("graph"),
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp seriesCollection = graph.seriesTypes[type],
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp ratio,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp order = this.get("order"),
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp graphOrder = this.get("graphOrder"),
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp left,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp marker,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp lastCollection,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp negativeBaseValues,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp positiveBaseValues,
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp fillColors,
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp borderColors,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp useOrigin = order === 0,
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp totalHeight = len * h,
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp dimensions = {
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp width: [],
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp height: []
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp },
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp xvalues = [],
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp yvalues = [],
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp groupMarkers = this.get("groupMarkers");
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp if(Y_Lang.isArray(style.fill.color))
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp {
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp fillColors = style.fill.color.concat();
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp }
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp if(Y_Lang.isArray(style.border.color))
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp {
648cc4f64f421c82b7fcffbb8ebc3b0cd3acadd2Tripp borderColors = style.border.color.concat();
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp this._createMarkerCache();
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp if(totalHeight > this.get("height"))
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp ratio = this.height/totalHeight;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp h *= ratio;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp h = Math.max(h, 1);
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp if(!useOrigin)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp lastCollection = seriesCollection[order - 1];
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp negativeBaseValues = lastCollection.get("negativeBaseValues");
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp positiveBaseValues = lastCollection.get("positiveBaseValues");
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp if(!negativeBaseValues || !positiveBaseValues)
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp {
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp useOrigin = true;
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp positiveBaseValues = [];
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp negativeBaseValues = [];
2283e3a241de1db1aaba484b89c8aadd89446b36Tripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp else
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp negativeBaseValues = [];
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp positiveBaseValues = [];
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp this.set("negativeBaseValues", negativeBaseValues);
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp this.set("positiveBaseValues", positiveBaseValues);
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp for(i = 0; i < len; ++i)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp top = ycoords[i];
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp left = xcoords[i];
823ddbefd8e5a9793fd80368647b6572a93f06e9Tripp if(!isNumber(top) || !isNumber(left))
823ddbefd8e5a9793fd80368647b6572a93f06e9Tripp {
562568c870b1109f8b462727a15d214d71d892afTripp if(useOrigin)
562568c870b1109f8b462727a15d214d71d892afTripp {
562568c870b1109f8b462727a15d214d71d892afTripp positiveBaseValues[i] = this._leftOrigin;
562568c870b1109f8b462727a15d214d71d892afTripp negativeBaseValues[i] = this._leftOrigin;
562568c870b1109f8b462727a15d214d71d892afTripp }
4a55a0fcc3d0a6cc7557769aea54169614ffbf71Tripp this._markers.push(null);
823ddbefd8e5a9793fd80368647b6572a93f06e9Tripp continue;
823ddbefd8e5a9793fd80368647b6572a93f06e9Tripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp if(useOrigin)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
ee60e5568372ba636aa7eac094d936deadf1ef83Tripp w = Math.abs(left - this._leftOrigin);
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp if(left > this._leftOrigin)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp positiveBaseValues[i] = left;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp negativeBaseValues[i] = this._leftOrigin;
ee60e5568372ba636aa7eac094d936deadf1ef83Tripp left -= w;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp else if(left < this._leftOrigin)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp positiveBaseValues[i] = this._leftOrigin;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp negativeBaseValues[i] = left;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp else
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp positiveBaseValues[i] = left;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp negativeBaseValues[i] = this._leftOrigin;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp else
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp if(left < this._leftOrigin)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp left = negativeBaseValues[i] - (this._leftOrigin - xcoords[i]);
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp w = negativeBaseValues[i] - left;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp negativeBaseValues[i] = left;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
4a44e886072efd2f75d7eca199ba3327a3cdeedaTripp else if(left >= this._leftOrigin)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp left += (positiveBaseValues[i] - this._leftOrigin);
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp w = left - positiveBaseValues[i];
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp positiveBaseValues[i] = left;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp left -= w;
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
4a55a0fcc3d0a6cc7557769aea54169614ffbf71Tripp if(!isNaN(w) && w > 0)
4a55a0fcc3d0a6cc7557769aea54169614ffbf71Tripp {
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp top -= h/2;
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp if(groupMarkers)
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp {
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp dimensions.width[i] = w;
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp dimensions.height[i] = h;
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp xvalues.push(left);
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp yvalues.push(top);
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp }
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp else
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp {
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp style.width = w;
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp style.height = h;
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp style.x = left;
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp style.y = top;
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp if(fillColors)
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp {
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp style.fill.color = fillColors[i % fillColors.length];
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp }
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp if(borderColors)
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp {
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp style.border.color = borderColors[i % borderColors.length];
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp }
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp marker = this.getMarker(style, graphOrder, i);
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp }
4a55a0fcc3d0a6cc7557769aea54169614ffbf71Tripp }
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp else if(!groupMarkers)
4a55a0fcc3d0a6cc7557769aea54169614ffbf71Tripp {
4a55a0fcc3d0a6cc7557769aea54169614ffbf71Tripp this._markers.push(null);
4a55a0fcc3d0a6cc7557769aea54169614ffbf71Tripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp if(groupMarkers)
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp {
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp this._createGroupMarker({
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp fill: style.fill,
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp border: style.border,
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp dimensions: dimensions,
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp xvalues: xvalues,
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp yvalues: yvalues,
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp shape: style.shape
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp });
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp }
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp else
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp {
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp this._clearMarkerCache();
14bfa36e35102dbf271dcff98f773a01c75bd503Tripp }
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp },
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp /**
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @protected
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp *
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp * 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
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp updateMarkerState: function(type, i)
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp if(this._markers[i])
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp {
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp var state = this._getState(type),
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp ycoords = this.get("ycoords"),
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp marker = this._markers[i],
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp styles = this.get("styles").marker,
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp h = styles.height,
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp markerStyles = state == "off" || !styles[state] ? Y.clone(styles) : Y.clone(styles[state]),
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp fillColor,
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp borderColor;
cc21b565833307c2b0b06deb4e3ab22c2a94be3eTripp markerStyles.y = (ycoords[i] - h/2);
cc21b565833307c2b0b06deb4e3ab22c2a94be3eTripp markerStyles.x = marker.get("x");
cc21b565833307c2b0b06deb4e3ab22c2a94be3eTripp markerStyles.width = marker.get("width");
4a55a0fcc3d0a6cc7557769aea54169614ffbf71Tripp markerStyles.id = marker.get("id");
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp fillColor = markerStyles.fill.color;
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp borderColor = markerStyles.border.color;
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp if(Y_Lang.isArray(fillColor))
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp {
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp markerStyles.fill.color = fillColor[i % fillColor.length];
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp }
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp else
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp {
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp markerStyles.fill.color = this._getItemColor(markerStyles.fill.color, i);
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp }
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp if(Y_Lang.isArray(borderColor))
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp {
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp markerStyles.border.color = borderColor[i % borderColor.length];
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp }
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp else
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp {
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp markerStyles.border.color = this._getItemColor(markerStyles.border.color, i);
f41cd38553d2cf5460389feadfb52f3a91fb7b7fTripp }
cc21b565833307c2b0b06deb4e3ab22c2a94be3eTripp marker.set(markerStyles);
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp /**
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @protected
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp *
8209f3939e32e0e5bde64192267fdaf9db6f4fbcTripp * Returns default values for the `styles` attribute.
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp *
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @method _getPlotDefaults
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @return Object
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp _getPlotDefaults: function()
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp var defs = {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp fill:{
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp type: "solid",
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp alpha: 1,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp colors:null,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp alphas: null,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp ratios: null
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp border:{
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp weight: 0,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp alpha: 1
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp width: 24,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp height: 24,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp shape: "rect",
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp padding:{
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp top: 0,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp left: 0,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp right: 0,
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp bottom: 0
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp };
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp defs.fill.color = this._getDefaultColor(this.get("graphOrder"), "fill");
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp defs.border.color = this._getDefaultColor(this.get("graphOrder"), "border");
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp return defs;
82d0cf8c731b23f6a2fbb31e3e696e629444363eTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp}, {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp ATTRS: {
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp /**
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * Read-only attribute indicating the type of series.
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp *
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @attribute type
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @type String
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @default stackedBar
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp type: {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp value: "stackedBar"
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp /**
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * Direction of the series
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp *
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @attribute direction
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @type String
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @default vertical
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp direction: {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp value: "vertical"
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp /**
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @private
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp *
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp * @attribute negativeBaseValues
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp * @type Array
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp * @default null
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp negativeBaseValues: {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp value: null
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp },
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp /**
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp * @private
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp *
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp * @attribute positiveBaseValues
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp * @type Array
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp * @default null
8648721e29bb657dd5c5ff20f03e86fe50628ce6Tripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp positiveBaseValues: {
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp value: null
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp /**
8209f3939e32e0e5bde64192267fdaf9db6f4fbcTripp * Style properties used for drawing markers. This attribute is inherited from `BarSeries`. Below are the default values:
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp * <dl>
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp * <dt>fill</dt><dd>A hash containing the following values:
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp * <dl>
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp * <dt>color</dt><dd>Color of the fill. The default value is determined by the order of the series on the graph. The color
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp * will be retrieved from the below array:<br/>
8209f3939e32e0e5bde64192267fdaf9db6f4fbcTripp * `["#66007f", "#a86f41", "#295454", "#996ab2", "#e8cdb7", "#90bdbd","#000000","#c3b8ca", "#968373", "#678585"]`
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp * </dd>
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp * <dt>alpha</dt><dd>Number from 0 to 1 indicating the opacity of the marker fill. The default value is 1.</dd>
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp * </dl>
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp * </dd>
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp * <dt>border</dt><dd>A hash containing the following values:
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp * <dl>
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp * <dt>color</dt><dd>Color of the border. The default value is determined by the order of the series on the graph. The color
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp * will be retrieved from the below array:<br/>
8209f3939e32e0e5bde64192267fdaf9db6f4fbcTripp * `["#205096", "#b38206", "#000000", "#94001e", "#9d6fa0", "#e55b00", "#5e85c9", "#adab9e", "#6ac291", "#006457"]`
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp * <dt>alpha</dt><dd>Number from 0 to 1 indicating the opacity of the marker border. The default value is 1.</dd>
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp * <dt>weight</dt><dd>Number indicating the width of the border. The default value is 1.</dd>
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp * </dl>
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp * </dd>
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp * <dt>height</dt><dd>indicates the width of the marker. The default value is 24.</dd>
8209f3939e32e0e5bde64192267fdaf9db6f4fbcTripp * <dt>over</dt><dd>hash containing styles for markers when highlighted by a `mouseover` event. The default
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp * values for each style is null. When an over style is not set, the non-over value will be used. For example,
8209f3939e32e0e5bde64192267fdaf9db6f4fbcTripp * the default value for `marker.over.fill.color` is equivalent to `marker.fill.color`.</dd>
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp * </dl>
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp *
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp * @attribute styles
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp * @type Object
11174dd4aa7b6152555e21e3e0a5a511e058415bTripp */
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp }
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp});
e393eced613f9b4a5fb6bdd461d0e0bf5064d5ecTripp