-<!DOCTYPE html><html><head><title>Sencha Documentation Project</title><link rel="stylesheet" href="../reset.css" type="text/css"><link rel="stylesheet" href="../prettify.css" type="text/css"><link rel="stylesheet" href="../prettify_sa.css" type="text/css"><script type="text/javascript" src="../prettify.js"></script></head><body onload="prettyPrint()"><pre class="prettyprint"><pre><span id='Ext-chart.axis.Numeric-method-constructor'><span id='Ext-chart.axis.Numeric'>/**
-</span></span> * @class Ext.chart.axis.Numeric
+<!DOCTYPE html>
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>The source code</title>
+ <link href="../resources/prettify/prettify.css" type="text/css" rel="stylesheet" />
+ <script type="text/javascript" src="../resources/prettify/prettify.js"></script>
+ <style type="text/css">
+ .highlight { display: block; background-color: #ddd; }
+ </style>
+ <script type="text/javascript">
+ function highlight() {
+ document.getElementById(location.hash.replace(/#/, "")).className = "highlight";
+ }
+ </script>
+</head>
+<body onload="prettyPrint(); highlight();">
+ <pre class="prettyprint lang-js"><span id='Ext-chart-axis-Numeric'>/**
+</span> * @class Ext.chart.axis.Numeric
* @extends Ext.chart.axis.Axis
*
* An axis to handle numeric values. This axis is used for quantitative data as
* axis so that the values are bound to that. If no values are set, then the
* scale will auto-adjust to the values.
*
- * {@img Ext.chart.axis.Numeric/Ext.chart.axis.Numeric.png Ext.chart.axis.Numeric chart axis}
- *
- * For example:
- *
+ * @example
* var store = Ext.create('Ext.data.JsonStore', {
* fields: ['name', 'data1', 'data2', 'data3', 'data4', 'data5'],
* data: [
* {'name':'metric two', 'data1':7, 'data2':8, 'data3':16, 'data4':10, 'data5':3},
* {'name':'metric three', 'data1':5, 'data2':2, 'data3':14, 'data4':12, 'data5':7},
* {'name':'metric four', 'data1':2, 'data2':14, 'data3':6, 'data4':1, 'data5':23},
- * {'name':'metric five', 'data1':27, 'data2':38, 'data3':36, 'data4':13, 'data5':33}
+ * {'name':'metric five', 'data1':27, 'data2':38, 'data3':36, 'data4':13, 'data5':33}
* ]
* });
- *
+ *
* Ext.create('Ext.chart.Chart', {
* renderTo: Ext.getBody(),
* width: 500,
*
* In this example we create an axis of Numeric type. We set a minimum value so that
* even if all series have values greater than zero, the grid starts at zero. We bind
- * the axis onto the left part of the surface by setting <em>position</em> to <em>left</em>.
- * We bind three different store fields to this axis by setting <em>fields</em> to an array.
- * We set the title of the axis to <em>Number of Hits</em> by using the <em>title</em> property.
- * We use a <em>grid</em> configuration to set odd background rows to a certain style and even rows
+ * the axis onto the left part of the surface by setting `position` to `left`.
+ * We bind three different store fields to this axis by setting `fields` to an array.
+ * We set the title of the axis to _Number of Hits_ by using the `title` property.
+ * We use a `grid` configuration to set odd background rows to a certain style and even rows
* to be transparent/ignored.
- *
- * @constructor
*/
Ext.define('Ext.chart.axis.Numeric', {
alias: 'axis.numeric',
constructor: function(config) {
- var me = this, label, f;
+ var me = this,
+ hasLabel = !!(config.label && config.label.renderer),
+ label;
+
me.callParent([config]);
label = me.label;
if (me.roundToDecimal === false) {
return;
}
- if (label.renderer) {
- f = label.renderer;
- label.renderer = function(v) {
- return me.roundToDecimal( f(v), me.decimals );
- };
- } else {
+ if (!hasLabel) {
label.renderer = function(v) {
return me.roundToDecimal(v, me.decimals);
};
}
},
-
+
roundToDecimal: function(v, dec) {
var val = Math.pow(10, dec || 0);
- return ((v * val) >> 0) / val;
+ return Math.floor(v * val) / val;
},
-
-<span id='Ext-chart.axis.Numeric-property-minimum'> /**
+
+<span id='Ext-chart-axis-Numeric-property-minimum'> /**
</span> * The minimum value drawn by the axis. If not set explicitly, the axis
* minimum will be calculated automatically.
*
- * @property minimum
- * @type Number
+ * @property {Number} minimum
*/
minimum: NaN,
-<span id='Ext-chart.axis.Numeric-property-maximum'> /**
+<span id='Ext-chart-axis-Numeric-property-maximum'> /**
</span> * The maximum value drawn by the axis. If not set explicitly, the axis
* maximum will be calculated automatically.
*
- * @property maximum
- * @type Number
+ * @property {Number} maximum
*/
maximum: NaN,
-<span id='Ext-chart.axis.Numeric-property-decimals'> /**
+<span id='Ext-chart-axis-Numeric-property-decimals'> /**
</span> * The number of decimals to round the value to.
- * Default's 2.
*
- * @property decimals
- * @type Number
+ * @property {Number} decimals
*/
decimals: 2,
-<span id='Ext-chart.axis.Numeric-property-scale'> /**
+<span id='Ext-chart-axis-Numeric-property-scale'> /**
</span> * The scaling algorithm to use on this axis. May be "linear" or
- * "logarithmic".
+ * "logarithmic". Currently only linear scale is implemented.
*
- * @property scale
- * @type String
+ * @property {String} scale
+ * @private
*/
scale: "linear",
-<span id='Ext-chart.axis.Numeric-property-position'> /**
+<span id='Ext-chart-axis-Numeric-property-position'> /**
</span> * Indicates the position of the axis relative to the chart
*
- * @property position
- * @type String
+ * @property {String} position
*/
position: 'left',
-<span id='Ext-chart.axis.Numeric-property-adjustMaximumByMajorUnit'> /**
+<span id='Ext-chart-axis-Numeric-property-adjustMaximumByMajorUnit'> /**
</span> * Indicates whether to extend maximum beyond data's maximum to the nearest
* majorUnit.
*
- * @property adjustMaximumByMajorUnit
- * @type Boolean
+ * @property {Boolean} adjustMaximumByMajorUnit
*/
adjustMaximumByMajorUnit: false,
-<span id='Ext-chart.axis.Numeric-property-adjustMinimumByMajorUnit'> /**
+<span id='Ext-chart-axis-Numeric-property-adjustMinimumByMajorUnit'> /**
</span> * Indicates whether to extend the minimum beyond data's minimum to the
* nearest majorUnit.
*
- * @property adjustMinimumByMajorUnit
- * @type Boolean
+ * @property {Boolean} adjustMinimumByMajorUnit
*/
adjustMinimumByMajorUnit: false,
return this.calcEnds();
}
});
-</pre></pre></body></html>
\ No newline at end of file
+</pre>
+</body>
+</html>