(axList, r0Fraction, r1Fraction, updates, linkedAxes)
| 1083 | } |
| 1084 | |
| 1085 | function zoomAxRanges(axList, r0Fraction, r1Fraction, updates, linkedAxes) { |
| 1086 | for(var i = 0; i < axList.length; i++) { |
| 1087 | var axi = axList[i]; |
| 1088 | if(axi.fixedrange) continue; |
| 1089 | |
| 1090 | if(axi.rangebreaks) { |
| 1091 | var isY = axi._id.charAt(0) === 'y'; |
| 1092 | var r0F = isY ? (1 - r0Fraction) : r0Fraction; |
| 1093 | var r1F = isY ? (1 - r1Fraction) : r1Fraction; |
| 1094 | |
| 1095 | updates[axi._name + '.range[0]'] = axi.l2r(axi.p2l(r0F * axi._length)); |
| 1096 | updates[axi._name + '.range[1]'] = axi.l2r(axi.p2l(r1F * axi._length)); |
| 1097 | } else { |
| 1098 | var axRangeLinear0 = axi._rl[0]; |
| 1099 | var axRangeLinearSpan = axi._rl[1] - axRangeLinear0; |
| 1100 | updates[axi._name + '.range[0]'] = axi.l2r(axRangeLinear0 + axRangeLinearSpan * r0Fraction); |
| 1101 | updates[axi._name + '.range[1]'] = axi.l2r(axRangeLinear0 + axRangeLinearSpan * r1Fraction); |
| 1102 | } |
| 1103 | } |
| 1104 | |
| 1105 | // zoom linked axes about their centers |
| 1106 | if(linkedAxes && linkedAxes.length) { |
| 1107 | var linkedR0Fraction = (r0Fraction + (1 - r1Fraction)) / 2; |
| 1108 | zoomAxRanges(linkedAxes, linkedR0Fraction, 1 - linkedR0Fraction, updates, []); |
| 1109 | } |
| 1110 | } |
| 1111 | |
| 1112 | function dragAxList(axList, pix) { |
| 1113 | for(var i = 0; i < axList.length; i++) { |
no outgoing calls
no test coverage detected
searching dependent graphs…