source: node_modules/victory-vendor/lib-vendor/d3-scale/src/pow.js

Last change on this file was a762898, checked in by istevanoska <ilinastevanoska@…>, 5 months ago

Added visualizations

  • Property mode set to 100644
File size: 1.3 KB
Line 
1"use strict";
2
3Object.defineProperty(exports, "__esModule", {
4 value: true
5});
6exports.default = pow;
7exports.powish = powish;
8exports.sqrt = sqrt;
9var _linear = require("./linear.js");
10var _continuous = require("./continuous.js");
11var _init = require("./init.js");
12function transformPow(exponent) {
13 return function (x) {
14 return x < 0 ? -Math.pow(-x, exponent) : Math.pow(x, exponent);
15 };
16}
17function transformSqrt(x) {
18 return x < 0 ? -Math.sqrt(-x) : Math.sqrt(x);
19}
20function transformSquare(x) {
21 return x < 0 ? -x * x : x * x;
22}
23function powish(transform) {
24 var scale = transform(_continuous.identity, _continuous.identity),
25 exponent = 1;
26 function rescale() {
27 return exponent === 1 ? transform(_continuous.identity, _continuous.identity) : exponent === 0.5 ? transform(transformSqrt, transformSquare) : transform(transformPow(exponent), transformPow(1 / exponent));
28 }
29 scale.exponent = function (_) {
30 return arguments.length ? (exponent = +_, rescale()) : exponent;
31 };
32 return (0, _linear.linearish)(scale);
33}
34function pow() {
35 var scale = powish((0, _continuous.transformer)());
36 scale.copy = function () {
37 return (0, _continuous.copy)(scale, pow()).exponent(scale.exponent());
38 };
39 _init.initRange.apply(scale, arguments);
40 return scale;
41}
42function sqrt() {
43 return pow.apply(null, arguments).exponent(0.5);
44}
Note: See TracBrowser for help on using the repository browser.