src/cm/media/js/lib/yui/yui3-3.15.0/build/series-cartesian/series-cartesian-debug.js
author ymh <ymh.work@gmail.com>
Fri, 14 Mar 2014 13:16:10 +0100
changeset 611 fa66f4bb1563
parent 602 e16a97fb364a
permissions -rw-r--r--
add some more custom config and put every thing in comment in the custom.yaml template
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
602
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     1
YUI.add('series-cartesian', function (Y, NAME) {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     2
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     3
/**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     4
 * Provides functionality for creating a cartesian chart series.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     5
 *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     6
 * @module charts
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     7
 * @submodule series-cartesian
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     8
 */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
     9
var Y_Lang = Y.Lang;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    10
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    11
/**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    12
 * An abstract class for creating series instances with horizontal and vertical axes.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    13
 * CartesianSeries provides the core functionality used by the following classes:
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    14
 * <ul>
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    15
 *      <li>{{#crossLink "LineSeries"}}{{/crossLink}}</li>
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    16
 *      <li>{{#crossLink "MarkerSeries"}}{{/crossLink}}</li>
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    17
 *      <li>{{#crossLink "AreaSeries"}}{{/crossLink}}</li>
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    18
 *      <li>{{#crossLink "SplineSeries"}}{{/crossLink}}</li>
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    19
 *      <li>{{#crossLink "AreaSplineSeries"}}{{/crossLink}}</li>
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    20
 *      <li>{{#crossLink "ComboSeries"}}{{/crossLink}}</li>
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    21
 *      <li>{{#crossLink "ComboSplineSeries"}}{{/crossLink}}</li>
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    22
 *      <li>{{#crossLink "Histogram"}}{{/crossLink}}</li>
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    23
 *  </ul>
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    24
 *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    25
 * @class CartesianSeries
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    26
 * @extends SeriesBase
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    27
 * @constructor
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    28
 * @param {Object} config (optional) Configuration parameters.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    29
 * @submodule series-base
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    30
 */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    31
Y.CartesianSeries = Y.Base.create("cartesianSeries", Y.SeriesBase, [], {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    32
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    33
     * Storage for `xDisplayName` attribute.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    34
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    35
     * @property _xDisplayName
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    36
     * @type String
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    37
     * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    38
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    39
    _xDisplayName: null,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    40
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    41
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    42
     * Storage for `yDisplayName` attribute.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    43
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    44
     * @property _yDisplayName
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    45
     * @type String
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    46
     * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    47
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    48
    _yDisplayName: null,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    49
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    50
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    51
     * Th x-coordinate for the left edge of the series.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    52
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    53
     * @property _leftOrigin
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    54
     * @type String
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    55
     * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    56
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    57
    _leftOrigin: null,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    58
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    59
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    60
     * The y-coordinate for the bottom edge of the series.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    61
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    62
     * @property _bottomOrigin
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    63
     * @type String
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    64
     * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    65
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    66
    _bottomOrigin: null,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    67
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    68
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    69
     * Adds event listeners.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    70
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    71
     * @method addListeners
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    72
     * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    73
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    74
    addListeners: function()
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    75
    {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    76
        var xAxis = this.get("xAxis"),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    77
            yAxis = this.get("yAxis");
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    78
        if(xAxis)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    79
        {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    80
            this._xDataReadyHandle = xAxis.after("dataReady", Y.bind(this._xDataChangeHandler, this));
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    81
            this._xDataUpdateHandle = xAxis.after("dataUpdate", Y.bind(this._xDataChangeHandler, this));
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    82
        }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    83
        if(yAxis)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    84
        {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    85
            this._yDataReadyHandle = yAxis.after("dataReady", Y.bind(this._yDataChangeHandler, this));
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    86
            this._yDataUpdateHandle = yAxis.after("dataUpdate", Y.bind(this._yDataChangeHandler, this));
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    87
        }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    88
        this._xAxisChangeHandle = this.after("xAxisChange", this._xAxisChangeHandler);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    89
        this._yAxisChangeHandle = this.after("yAxisChange", this._yAxisChangeHandler);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    90
        this._stylesChangeHandle = this.after("stylesChange", function() {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    91
            var axesReady = this._updateAxisBase();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    92
            if(axesReady)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    93
            {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    94
                this.draw();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    95
            }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    96
        });
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    97
        this._widthChangeHandle = this.after("widthChange", function() {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    98
            var axesReady = this._updateAxisBase();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
    99
            if(axesReady)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   100
            {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   101
                this.draw();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   102
            }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   103
        });
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   104
        this._heightChangeHandle = this.after("heightChange", function() {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   105
            var axesReady = this._updateAxisBase();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   106
            if(axesReady)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   107
            {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   108
                this.draw();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   109
            }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   110
        });
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   111
        this._visibleChangeHandle = this.after("visibleChange", this._handleVisibleChange);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   112
    },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   113
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   114
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   115
     * Event handler for the xAxisChange event.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   116
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   117
     * @method _xAxisChangeHandler
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   118
     * @param {Object} e Event object.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   119
     * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   120
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   121
    _xAxisChangeHandler: function()
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   122
    {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   123
        var xAxis = this.get("xAxis");
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   124
        xAxis.after("dataReady", Y.bind(this._xDataChangeHandler, this));
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   125
        xAxis.after("dataUpdate", Y.bind(this._xDataChangeHandler, this));
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   126
    },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   127
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   128
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   129
     * Event handler the yAxisChange event.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   130
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   131
     * @method _yAxisChangeHandler
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   132
     * @param {Object} e Event object.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   133
     * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   134
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   135
    _yAxisChangeHandler: function()
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   136
    {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   137
        var yAxis = this.get("yAxis");
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   138
        yAxis.after("dataReady", Y.bind(this._yDataChangeHandler, this));
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   139
        yAxis.after("dataUpdate", Y.bind(this._yDataChangeHandler, this));
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   140
    },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   141
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   142
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   143
     * Constant used to generate unique id.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   144
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   145
     * @property GUID
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   146
     * @type String
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   147
     * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   148
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   149
    GUID: "yuicartesianseries",
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   150
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   151
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   152
     * Event handler for xDataChange event.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   153
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   154
     * @method _xDataChangeHandler
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   155
     * @param {Object} event Event object.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   156
     * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   157
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   158
    _xDataChangeHandler: function()
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   159
    {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   160
        var axesReady = this._updateAxisBase();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   161
        if(axesReady)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   162
        {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   163
            this.draw();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   164
        }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   165
    },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   166
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   167
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   168
     * Event handler for yDataChange event.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   169
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   170
     * @method _yDataChangeHandler
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   171
     * @param {Object} event Event object.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   172
     * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   173
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   174
    _yDataChangeHandler: function()
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   175
    {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   176
        var axesReady = this._updateAxisBase();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   177
        if(axesReady)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   178
        {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   179
            this.draw();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   180
        }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   181
    },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   182
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   183
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   184
     * Checks to ensure that both xAxis and yAxis data are available. If so, set the `xData` and `yData` attributes
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   185
     * and return `true`. Otherwise, return `false`.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   186
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   187
     * @method _updateAxisBase
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   188
     * @return Boolean
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   189
     * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   190
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   191
    _updateAxisBase: function()
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   192
    {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   193
        var xAxis = this.get("xAxis"),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   194
            yAxis = this.get("yAxis"),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   195
            xKey = this.get("xKey"),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   196
            yKey = this.get("yKey"),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   197
            yData,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   198
            xData,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   199
            xReady,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   200
            yReady,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   201
            ready;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   202
        if(!xAxis || !yAxis || !xKey || !yKey)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   203
        {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   204
            ready = false;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   205
        }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   206
        else
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   207
        {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   208
            xData = xAxis.getDataByKey(xKey);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   209
            yData = yAxis.getDataByKey(yKey);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   210
            if(Y_Lang.isArray(xKey))
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   211
            {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   212
                xReady = (xData && Y.Object.size(xData) > 0) ? this._checkForDataByKey(xData, xKey) : false;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   213
            }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   214
            else
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   215
            {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   216
                xReady = xData ? true : false;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   217
            }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   218
            if(Y_Lang.isArray(yKey))
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   219
            {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   220
                yReady = (yData && Y.Object.size(yData) > 0) ? this._checkForDataByKey(yData, yKey) : false;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   221
            }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   222
            else
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   223
            {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   224
                yReady = yData ? true : false;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   225
            }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   226
            ready = xReady && yReady;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   227
            if(ready)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   228
            {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   229
                this.set("xData", xData);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   230
                this.set("yData", yData);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   231
            }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   232
        }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   233
        return ready;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   234
    },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   235
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   236
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   237
     * Checks to see if all keys of a data object exist and contain data.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   238
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   239
     * @method _checkForDataByKey
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   240
     * @param {Object} obj The object to check
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   241
     * @param {Array} keys The keys to check
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   242
     * @return Boolean
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   243
     * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   244
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   245
    _checkForDataByKey: function(obj, keys)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   246
    {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   247
        var i,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   248
            len = keys.length,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   249
            hasData = false;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   250
        for(i = 0; i < len; i = i + 1)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   251
        {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   252
            if(obj[keys[i]])
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   253
            {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   254
                hasData = true;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   255
                break;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   256
            }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   257
        }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   258
        return hasData;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   259
    },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   260
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   261
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   262
     * Draws the series is the xAxis and yAxis data are both available.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   263
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   264
     * @method validate
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   265
     * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   266
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   267
    validate: function()
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   268
    {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   269
        if((this.get("xData") && this.get("yData")) || this._updateAxisBase())
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   270
        {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   271
            this.draw();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   272
        }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   273
        else
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   274
        {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   275
            this.fire("drawingComplete");
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   276
        }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   277
    },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   278
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   279
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   280
     * Calculates the coordinates for the series.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   281
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   282
     * @method setAreaData
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   283
     * @protected
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   284
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   285
    setAreaData: function()
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   286
    {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   287
        var w = this.get("width"),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   288
            h = this.get("height"),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   289
            xAxis = this.get("xAxis"),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   290
            yAxis = this.get("yAxis"),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   291
            xData = this._copyData(this.get("xData")),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   292
            yData = this._copyData(this.get("yData")),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   293
            direction = this.get("direction"),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   294
            dataLength = direction === "vertical" ? yData.length : xData.length,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   295
            xOffset = xAxis.getEdgeOffset(xAxis.getTotalMajorUnits(), w),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   296
            yOffset = yAxis.getEdgeOffset(yAxis.getTotalMajorUnits(), h),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   297
            padding = this.get("styles").padding,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   298
			leftPadding = padding.left,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   299
			topPadding = padding.top,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   300
			dataWidth = w - (leftPadding + padding.right + xOffset * 2),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   301
			dataHeight = h - (topPadding + padding.bottom + yOffset * 2),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   302
			xMax = xAxis.get("maximum"),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   303
			xMin = xAxis.get("minimum"),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   304
			yMax = yAxis.get("maximum"),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   305
			yMin = yAxis.get("minimum"),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   306
            graphic = this.get("graphic"),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   307
            yAxisType = yAxis.get("type"),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   308
            reverseYCoords = (yAxisType === "numeric" || yAxisType === "stacked"),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   309
            xcoords,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   310
            ycoords,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   311
            xOriginValue = xAxis.getOrigin(),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   312
            yOriginValue = yAxis.getOrigin();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   313
        graphic.set("width", w);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   314
        graphic.set("height", h);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   315
        xOffset = xOffset + leftPadding;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   316
        yOffset = reverseYCoords ? yOffset + dataHeight + topPadding + padding.bottom : topPadding + yOffset;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   317
        this._leftOrigin = Math.round(xAxis._getCoordFromValue(xMin, xMax, dataWidth, xOriginValue, xOffset, false));
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   318
        this._bottomOrigin = Math.round(yAxis._getCoordFromValue(yMin, yMax, dataHeight, yOriginValue, yOffset, reverseYCoords));
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   319
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   320
        xcoords = this._getCoords(xMin, xMax, dataWidth, xData, xAxis, xOffset, false);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   321
        ycoords = this._getCoords(yMin, yMax, dataHeight, yData, yAxis, yOffset, reverseYCoords);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   322
        this.set("xcoords", xcoords);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   323
		this.set("ycoords", ycoords);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   324
        this._dataLength = dataLength;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   325
        this._setXMarkerPlane(xcoords, dataLength);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   326
        this._setYMarkerPlane(ycoords, dataLength);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   327
    },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   328
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   329
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   330
     * Returns either an array coordinates or an object key valued arrays of coordinates depending on the input.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   331
     * If the input data is an array, an array is returned. If the input data is an object, an object will be returned.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   332
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   333
     * @method _getCoords
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   334
     * @param {Number} min The minimum value of the range of data.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   335
     * @param {Number} max The maximum value of the range of data.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   336
     * @param {Number} length The length, in pixels, of across which the coordinates will be calculated.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   337
     * @param {AxisBase} axis The axis in which the data is bound.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   338
     * @param {Number} offset The value in which to offet the first coordinate.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   339
     * @param {Boolean} reverse Indicates whether to calculate the coordinates in reverse order.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   340
     * @return Array|Object
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   341
     * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   342
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   343
    _getCoords: function(min, max, length, data, axis, offset, reverse)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   344
    {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   345
        var coords,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   346
            key;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   347
        if(Y_Lang.isArray(data))
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   348
        {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   349
            coords = axis._getCoordsFromValues(min, max, length, data, offset, reverse);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   350
        }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   351
        else
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   352
        {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   353
            coords = {};
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   354
            for(key in data)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   355
            {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   356
                if(data.hasOwnProperty(key))
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   357
                {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   358
                    coords[key] = this._getCoords.apply(this, [min, max, length, data[key], axis, offset, reverse]);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   359
                }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   360
            }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   361
        }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   362
        return coords;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   363
    },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   364
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   365
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   366
     * Used to cache xData and yData in the setAreaData method. Returns a copy of an
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   367
     * array if an array is received as the param and returns an object literal of
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   368
     * array copies if an object literal is received as the param.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   369
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   370
     * @method _copyData
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   371
     * @param {Array|Object} val The object or array to be copied.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   372
     * @return Array|Object
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   373
     * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   374
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   375
    _copyData: function(val)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   376
    {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   377
        var copy,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   378
            key;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   379
        if(Y_Lang.isArray(val))
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   380
        {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   381
            copy = val.concat();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   382
        }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   383
        else
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   384
        {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   385
            copy = {};
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   386
            for(key in val)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   387
            {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   388
                if(val.hasOwnProperty(key))
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   389
                {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   390
                    copy[key] = val[key].concat();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   391
                }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   392
            }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   393
        }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   394
        return copy;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   395
    },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   396
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   397
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   398
     * Sets the marker plane for the series when the coords argument is an array.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   399
     * If the coords argument is an object literal no marker plane is set.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   400
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   401
     * @method _setXMarkerPlane
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   402
     * @param {Array|Object} coords An array of x coordinates or an object literal
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   403
     * containing key value pairs mapped to an array of coordinates.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   404
     * @param {Number} dataLength The length of data for the series.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   405
     * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   406
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   407
    _setXMarkerPlane: function(coords, dataLength)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   408
    {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   409
        var i = 0,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   410
            xMarkerPlane = [],
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   411
            xMarkerPlaneOffset = this.get("xMarkerPlaneOffset"),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   412
            nextX;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   413
        if(Y_Lang.isArray(coords))
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   414
        {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   415
            for(i = 0; i < dataLength; i = i + 1)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   416
            {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   417
                nextX = coords[i];
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   418
                xMarkerPlane.push({start:nextX - xMarkerPlaneOffset, end: nextX + xMarkerPlaneOffset});
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   419
            }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   420
            this.set("xMarkerPlane", xMarkerPlane);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   421
        }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   422
    },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   423
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   424
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   425
     * Sets the marker plane for the series when the coords argument is an array.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   426
     * If the coords argument is an object literal no marker plane is set.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   427
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   428
     * @method _setYMarkerPlane
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   429
     * @param {Array|Object} coords An array of y coordinates or an object literal
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   430
     * containing key value pairs mapped to an array of coordinates.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   431
     * @param {Number} dataLength The length of data for the series.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   432
     * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   433
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   434
    _setYMarkerPlane: function(coords, dataLength)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   435
    {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   436
        var i = 0,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   437
            yMarkerPlane = [],
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   438
            yMarkerPlaneOffset = this.get("yMarkerPlaneOffset"),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   439
            nextY;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   440
        if(Y_Lang.isArray(coords))
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   441
        {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   442
            for(i = 0; i < dataLength; i = i + 1)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   443
            {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   444
                nextY = coords[i];
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   445
                yMarkerPlane.push({start:nextY - yMarkerPlaneOffset, end: nextY + yMarkerPlaneOffset});
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   446
            }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   447
            this.set("yMarkerPlane", yMarkerPlane);
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   448
        }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   449
    },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   450
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   451
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   452
     * Finds the first valid index of an array coordinates.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   453
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   454
     * @method _getFirstValidIndex
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   455
     * @param {Array} coords An array of x or y coordinates.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   456
     * @return Number
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   457
     * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   458
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   459
    _getFirstValidIndex: function(coords)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   460
    {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   461
        var coord,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   462
            i = -1,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   463
            limit = coords.length;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   464
        while(!Y_Lang.isNumber(coord) && i < limit)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   465
        {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   466
            i += 1;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   467
            coord = coords[i];
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   468
        }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   469
        return i;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   470
    },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   471
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   472
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   473
     * Finds the last valid index of an array coordinates.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   474
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   475
     * @method _getLastValidIndex
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   476
     * @param {Array} coords An array of x or y coordinates.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   477
     * @return Number
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   478
     * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   479
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   480
    _getLastValidIndex: function(coords)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   481
    {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   482
        var coord,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   483
            i = coords.length,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   484
            limit = -1;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   485
        while(!Y_Lang.isNumber(coord) && i > limit)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   486
        {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   487
            i -= 1;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   488
            coord = coords[i];
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   489
        }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   490
        return i;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   491
    },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   492
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   493
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   494
     * Draws the series.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   495
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   496
     * @method draw
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   497
     * @protected
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   498
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   499
    draw: function()
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   500
    {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   501
        var w = this.get("width"),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   502
            h = this.get("height"),
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   503
            xcoords,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   504
            ycoords;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   505
        if(this.get("rendered"))
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   506
        {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   507
            if((isFinite(w) && isFinite(h) && w > 0 && h > 0) &&
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   508
                ((this.get("xData") && this.get("yData")) ||
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   509
                this._updateAxisBase()))
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   510
            {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   511
                if(this._drawing)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   512
                {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   513
                    this._callLater = true;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   514
                    return;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   515
                }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   516
                this._drawing = true;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   517
                this._callLater = false;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   518
                this.setAreaData();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   519
                xcoords = this.get("xcoords");
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   520
                ycoords = this.get("ycoords");
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   521
                if(xcoords && ycoords && xcoords.length > 0)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   522
                {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   523
                    this.drawSeries();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   524
                }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   525
                this._drawing = false;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   526
                if(this._callLater)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   527
                {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   528
                    this.draw();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   529
                }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   530
                else
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   531
                {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   532
                    this._toggleVisible(this.get("visible"));
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   533
                    this.fire("drawingComplete");
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   534
                }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   535
            }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   536
        }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   537
    },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   538
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   539
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   540
     * Default value for plane offsets when the parent chart's `interactiveType` is `planar`.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   541
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   542
     * @property _defaultPlaneOffset
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   543
     * @type Number
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   544
     * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   545
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   546
    _defaultPlaneOffset: 4,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   547
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   548
    /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   549
     * Destructor implementation for the CartesianSeries class.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   550
     * Calls destroy on all Graphic instances.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   551
     *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   552
     * @method destructor
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   553
     * @protected
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   554
     */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   555
    destructor: function()
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   556
    {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   557
        if(this.get("rendered"))
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   558
        {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   559
            if(this._xDataReadyHandle)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   560
            {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   561
                this._xDataReadyHandle.detach();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   562
            }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   563
            if(this._xDataUpdateHandle)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   564
            {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   565
                this._xDataUpdateHandle.detach();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   566
            }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   567
            if(this._yDataReadyHandle)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   568
            {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   569
                this._yDataReadyHandle.detach();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   570
            }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   571
            if(this._yDataUpdateHandle)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   572
            {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   573
                this._yDataUpdateHandle.detach();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   574
            }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   575
            if(this._xAxisChangeHandle)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   576
            {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   577
                this._xAxisChangeHandle.detach();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   578
            }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   579
            if(this._yAxisChangeHandle)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   580
            {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   581
                this._yAxisChangeHandle.detach();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   582
            }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   583
        }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   584
    }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   585
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   586
         * Event handle for the x-axis' dataReady event.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   587
         *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   588
         * @property _xDataReadyHandle
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   589
         * @type {EventHandle}
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   590
         * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   591
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   592
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   593
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   594
         * Event handle for the x-axis dataUpdate event.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   595
         *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   596
         * @property _xDataUpdateHandle
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   597
         * @type {EventHandle}
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   598
         * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   599
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   600
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   601
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   602
         * Event handle for the y-axis dataReady event.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   603
         *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   604
         * @property _yDataReadyHandle
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   605
         * @type {EventHandle}
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   606
         * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   607
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   608
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   609
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   610
         * Event handle for the y-axis dataUpdate event.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   611
         * @property _yDataUpdateHandle
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   612
         * @type {EventHandle}
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   613
         * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   614
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   615
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   616
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   617
         * Event handle for the xAxisChange event.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   618
         * @property _xAxisChangeHandle
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   619
         * @type {EventHandle}
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   620
         * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   621
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   622
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   623
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   624
         * Event handle for the yAxisChange event.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   625
         * @property _yAxisChangeHandle
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   626
         * @type {EventHandle}
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   627
         * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   628
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   629
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   630
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   631
         * Event handle for the stylesChange event.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   632
         * @property _stylesChangeHandle
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   633
         * @type {EventHandle}
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   634
         * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   635
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   636
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   637
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   638
         * Event handle for the widthChange event.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   639
         * @property _widthChangeHandle
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   640
         * @type {EventHandle}
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   641
         * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   642
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   643
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   644
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   645
         * Event handle for the heightChange event.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   646
         * @property _heightChangeHandle
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   647
         * @type {EventHandle}
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   648
         * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   649
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   650
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   651
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   652
         * Event handle for the visibleChange event.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   653
         * @property _visibleChangeHandle
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   654
         * @type {EventHandle}
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   655
         * @private
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   656
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   657
}, {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   658
    ATTRS: {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   659
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   660
         * An array of all series of the same type used within a chart application.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   661
         *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   662
         * @attribute seriesTypeCollection
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   663
         * @type Array
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   664
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   665
        seriesTypeCollection: {},
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   666
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   667
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   668
         * Name used for for displaying data related to the x-coordinate.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   669
         *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   670
         * @attribute xDisplayName
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   671
         * @type String
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   672
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   673
        xDisplayName: {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   674
            getter: function()
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   675
            {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   676
                return this._xDisplayName || this.get("xKey");
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   677
            },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   678
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   679
            setter: function(val)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   680
            {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   681
                this._xDisplayName = val.toString();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   682
                return val;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   683
            }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   684
        },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   685
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   686
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   687
         * Name used for for displaying data related to the y-coordinate.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   688
         *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   689
         * @attribute yDisplayName
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   690
         * @type String
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   691
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   692
        yDisplayName: {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   693
            getter: function()
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   694
            {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   695
                return this._yDisplayName || this.get("yKey");
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   696
            },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   697
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   698
            setter: function(val)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   699
            {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   700
                this._yDisplayName = val.toString();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   701
                return val;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   702
            }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   703
        },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   704
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   705
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   706
         * Name used for for displaying category data
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   707
         *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   708
         * @attribute categoryDisplayName
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   709
         * @type String
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   710
         * @readOnly
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   711
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   712
        categoryDisplayName: {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   713
            lazyAdd: false,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   714
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   715
            getter: function()
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   716
            {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   717
                return this.get("direction") === "vertical" ? this.get("yDisplayName") : this.get("xDisplayName");
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   718
            },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   719
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   720
            setter: function(val)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   721
            {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   722
                if(this.get("direction") === "vertical")
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   723
                {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   724
                    this._yDisplayName = val;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   725
                }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   726
                else
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   727
                {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   728
                    this._xDisplayName = val;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   729
                }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   730
                return val;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   731
            }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   732
        },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   733
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   734
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   735
         * Name used for for displaying value data
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   736
         *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   737
         * @attribute valueDisplayName
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   738
         * @type String
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   739
         * @readOnly
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   740
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   741
        valueDisplayName: {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   742
            lazyAdd: false,
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   743
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   744
            getter: function()
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   745
            {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   746
                return this.get("direction") === "vertical" ? this.get("xDisplayName") : this.get("yDisplayName");
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   747
            },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   748
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   749
            setter: function(val)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   750
            {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   751
                if(this.get("direction") === "vertical")
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   752
                {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   753
                    this._xDisplayName = val;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   754
                }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   755
                else
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   756
                {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   757
                    this._yDisplayName = val;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   758
                }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   759
                return val;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   760
            }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   761
        },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   762
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   763
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   764
         * Read-only attribute indicating the type of series.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   765
         *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   766
         * @attribute type
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   767
         * @type String
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   768
         * @default cartesian
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   769
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   770
        type: {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   771
            value: "cartesian"
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   772
        },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   773
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   774
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   775
         * Order of this instance of this `type`.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   776
         *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   777
         * @attribute order
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   778
         * @type Number
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   779
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   780
        order: {},
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   781
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   782
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   783
         * Order of the instance
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   784
         *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   785
         * @attribute graphOrder
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   786
         * @type Number
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   787
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   788
        graphOrder: {},
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   789
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   790
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   791
         * x coordinates for the series.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   792
         *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   793
         * @attribute xcoords
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   794
         * @type Array
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   795
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   796
        xcoords: {},
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   797
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   798
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   799
         * y coordinates for the series
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   800
         *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   801
         * @attribute ycoords
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   802
         * @type Array
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   803
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   804
        ycoords: {},
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   805
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   806
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   807
         * Reference to the `Axis` instance used for assigning
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   808
         * x-values to the graph.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   809
         *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   810
         * @attribute xAxis
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   811
         * @type Axis
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   812
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   813
        xAxis: {},
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   814
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   815
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   816
         * Reference to the `Axis` instance used for assigning
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   817
         * y-values to the graph.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   818
         *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   819
         * @attribute yAxis
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   820
         * @type Axis
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   821
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   822
        yAxis: {},
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   823
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   824
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   825
         * Indicates which array to from the hash of value arrays in
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   826
         * the x-axis `Axis` instance.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   827
         *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   828
         * @attribute xKey
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   829
         * @type String
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   830
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   831
        xKey: {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   832
            setter: function(val)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   833
            {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   834
                if(Y_Lang.isArray(val))
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   835
                {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   836
                    return val;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   837
                }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   838
                else
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   839
                {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   840
                    return val.toString();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   841
                }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   842
            }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   843
        },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   844
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   845
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   846
         * Indicates which array to from the hash of value arrays in
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   847
         * the y-axis `Axis` instance.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   848
         *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   849
         * @attribute yKey
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   850
         * @type String
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   851
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   852
        yKey: {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   853
            setter: function(val)
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   854
            {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   855
                if(Y_Lang.isArray(val))
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   856
                {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   857
                    return val;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   858
                }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   859
                else
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   860
                {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   861
                    return val.toString();
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   862
                }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   863
            }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   864
        },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   865
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   866
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   867
         * Array of x values for the series.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   868
         *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   869
         * @attribute xData
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   870
         * @type Array
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   871
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   872
        xData: {},
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   873
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   874
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   875
         * Array of y values for the series.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   876
         *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   877
         * @attribute yData
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   878
         * @type Array
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   879
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   880
        yData: {},
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   881
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   882
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   883
         * Collection of area maps along the xAxis. Used to determine mouseover for multiple
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   884
         * series.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   885
         *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   886
         * @attribute xMarkerPlane
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   887
         * @type Array
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   888
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   889
        xMarkerPlane: {},
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   890
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   891
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   892
         * Collection of area maps along the yAxis. Used to determine mouseover for multiple
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   893
         * series.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   894
         *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   895
         * @attribute yMarkerPlane
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   896
         * @type Array
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   897
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   898
        yMarkerPlane: {},
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   899
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   900
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   901
         * Distance from a data coordinate to the left/right for setting a hotspot.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   902
         *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   903
         * @attribute xMarkerPlaneOffset
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   904
         * @type Number
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   905
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   906
        xMarkerPlaneOffset: {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   907
            getter: function() {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   908
                var marker = this.get("styles").marker;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   909
                if(marker && marker.width && isFinite(marker.width))
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   910
                {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   911
                    return marker.width * 0.5;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   912
                }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   913
                return this._defaultPlaneOffset;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   914
            }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   915
        },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   916
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   917
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   918
         * Distance from a data coordinate to the top/bottom for setting a hotspot.
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   919
         *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   920
         * @attribute yMarkerPlaneOffset
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   921
         * @type Number
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   922
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   923
        yMarkerPlaneOffset: {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   924
            getter: function() {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   925
                var marker = this.get("styles").marker;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   926
                if(marker && marker.height && isFinite(marker.height))
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   927
                {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   928
                    return marker.height * 0.5;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   929
                }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   930
                return this._defaultPlaneOffset;
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   931
            }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   932
        },
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   933
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   934
        /**
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   935
         * Direction of the series
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   936
         *
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   937
         * @attribute direction
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   938
         * @type String
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   939
         */
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   940
        direction: {
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   941
            value: "horizontal"
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   942
        }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   943
    }
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   944
});
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   945
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   946
e16a97fb364a Use YUI 3.15
gibus
parents:
diff changeset
   947
}, '@VERSION@', {"requires": ["series-base"]});