aboutsummaryrefslogtreecommitdiff
path: root/includes/js/dojox/charting/scaler.js
diff options
context:
space:
mode:
Diffstat (limited to 'includes/js/dojox/charting/scaler.js')
-rw-r--r--includes/js/dojox/charting/scaler.js161
1 files changed, 0 insertions, 161 deletions
diff --git a/includes/js/dojox/charting/scaler.js b/includes/js/dojox/charting/scaler.js
deleted file mode 100644
index 8a3d091..0000000
--- a/includes/js/dojox/charting/scaler.js
+++ /dev/null
@@ -1,161 +0,0 @@
-if(!dojo._hasResource["dojox.charting.scaler"]){ //_hasResource checks added by build. Do not use _hasResource directly in your code.
-dojo._hasResource["dojox.charting.scaler"] = true;
-dojo.provide("dojox.charting.scaler");
-
-(function(){
- var deltaLimit = 3; // pixels
-
- var isText = function(val, text){
- val = val.toLowerCase();
- for(var i = 0; i < text.length; ++i){
- if(val == text[i]){ return true; }
- }
- return false;
- };
-
- var calcTicks = function(min, max, kwArgs, majorTick, minorTick, microTick, span){
- kwArgs = dojo.clone(kwArgs);
- if(!majorTick){
- if(kwArgs.fixUpper == "major"){ kwArgs.fixUpper = "minor"; }
- if(kwArgs.fixLower == "major"){ kwArgs.fixLower = "minor"; }
- }
- if(!minorTick){
- if(kwArgs.fixUpper == "minor"){ kwArgs.fixUpper = "micro"; }
- if(kwArgs.fixLower == "minor"){ kwArgs.fixLower = "micro"; }
- }
- if(!microTick){
- if(kwArgs.fixUpper == "micro"){ kwArgs.fixUpper = "none"; }
- if(kwArgs.fixLower == "micro"){ kwArgs.fixLower = "none"; }
- }
- var lowerBound = isText(kwArgs.fixLower, ["major"]) ?
- Math.floor(min / majorTick) * majorTick :
- isText(kwArgs.fixLower, ["minor"]) ?
- Math.floor(min / minorTick) * minorTick :
- isText(kwArgs.fixLower, ["micro"]) ?
- Math.floor(min / microTick) * unit : min,
- upperBound = isText(kwArgs.fixUpper, ["major"]) ?
- Math.ceil(max / majorTick) * majorTick :
- isText(kwArgs.fixUpper, ["minor"]) ?
- Math.ceil(max / minorTick) * minorTick :
- isText(kwArgs.fixUpper, ["unit"]) ?
- Math.ceil(max / unit) * unit : max,
- majorStart = (isText(kwArgs.fixLower, ["major"]) || !majorTick) ?
- lowerBound : Math.ceil(lowerBound / majorTick) * majorTick,
- minorStart = (isText(kwArgs.fixLower, ["major", "minor"]) || !minorTick) ?
- lowerBound : Math.ceil(lowerBound / minorTick) * minorTick,
- microStart = (isText(kwArgs.fixLower, ["major", "minor", "micro"]) || ! microTick) ?
- lowerBound : Math.ceil(lowerBound / microTick) * microTick,
- majorCount = !majorTick ? 0 : (isText(kwArgs.fixUpper, ["major"]) ?
- Math.round((upperBound - majorStart) / majorTick) :
- Math.floor((upperBound - majorStart) / majorTick)) + 1,
- minorCount = !minorTick ? 0 : (isText(kwArgs.fixUpper, ["major", "minor"]) ?
- Math.round((upperBound - minorStart) / minorTick) :
- Math.floor((upperBound - minorStart) / minorTick)) + 1,
- microCount = !microTick ? 0 : (isText(kwArgs.fixUpper, ["major", "minor", "micro"]) ?
- Math.round((upperBound - microStart) / microTick) :
- Math.floor((upperBound - microStart) / microTick)) + 1,
- minorPerMajor = minorTick ? Math.round(majorTick / minorTick) : 0,
- microPerMinor = microTick ? Math.round(minorTick / microTick) : 0,
- majorPrecision = majorTick ? Math.floor(Math.log(majorTick) / Math.LN10) : 0,
- minorPrecision = minorTick ? Math.floor(Math.log(minorTick) / Math.LN10) : 0,
- scale = span / (upperBound - lowerBound);
- if(!isFinite(scale)){ scale = 1; }
- return {
- bounds: {
- lower: lowerBound,
- upper: upperBound
- },
- major: {
- tick: majorTick,
- start: majorStart,
- count: majorCount,
- prec: majorPrecision
- },
- minor: {
- tick: minorTick,
- start: minorStart,
- count: minorCount,
- prec: minorPrecision
- },
- micro: {
- tick: microTick,
- start: microStart,
- count: microCount,
- prec: 0
- },
- minorPerMajor: minorPerMajor,
- microPerMinor: microPerMinor,
- scale: scale
- };
- };
-
- dojox.charting.scaler = function(min, max, span, kwArgs){
- var h = {fixUpper: "none", fixLower: "none", natural: false};
- if(kwArgs){
- if("fixUpper" in kwArgs){ h.fixUpper = String(kwArgs.fixUpper); }
- if("fixLower" in kwArgs){ h.fixLower = String(kwArgs.fixLower); }
- if("natural" in kwArgs){ h.natural = Boolean(kwArgs.natural); }
- }
-
- if(max <= min){
- return calcTicks(min, max, h, 0, 0, 0, span); // Object
- }
-
- var mag = Math.floor(Math.log(max - min) / Math.LN10),
- major = kwArgs && ("majorTick" in kwArgs) ? kwArgs.majorTick : Math.pow(10, mag),
- minor = 0, micro = 0, ticks;
-
- // calculate minor ticks
- if(kwArgs && ("minorTick" in kwArgs)){
- minor = kwArgs.minorTick;
- }else{
- do{
- minor = major / 10;
- if(!h.natural || minor > 0.9){
- ticks = calcTicks(min, max, h, major, minor, 0, span);
- if(ticks.scale * ticks.minor.tick > deltaLimit){ break; }
- }
- minor = major / 5;
- if(!h.natural || minor > 0.9){
- ticks = calcTicks(min, max, h, major, minor, 0, span);
- if(ticks.scale * ticks.minor.tick > deltaLimit){ break; }
- }
- minor = major / 2;
- if(!h.natural || minor > 0.9){
- ticks = calcTicks(min, max, h, major, minor, 0, span);
- if(ticks.scale * ticks.minor.tick > deltaLimit){ break; }
- }
- return calcTicks(min, max, h, major, 0, 0, span); // Object
- }while(false);
- }
-
- // calculate micro ticks
- if(kwArgs && ("microTick" in kwArgs)){
- micro = kwArgs.microTick;
- ticks = calcTicks(min, max, h, major, minor, micro, span);
- }else{
- do{
- micro = minor / 10;
- if(!h.natural || micro > 0.9){
- ticks = calcTicks(min, max, h, major, minor, micro, span);
- if(ticks.scale * ticks.micro.tick > deltaLimit){ break; }
- }
- micro = minor / 5;
- if(!h.natural || micro > 0.9){
- ticks = calcTicks(min, max, h, major, minor, micro, span);
- if(ticks.scale * ticks.micro.tick > deltaLimit){ break; }
- }
- micro = minor / 2;
- if(!h.natural || micro > 0.9){
- ticks = calcTicks(min, max, h, major, minor, micro, span);
- if(ticks.scale * ticks.micro.tick > deltaLimit){ break; }
- }
- micro = 0;
- }while(false);
- }
-
- return micro ? ticks : calcTicks(min, max, h, major, minor, 0, span); // Object
- };
-})();
-
-}