abstract-chart 3.1.0 → 3.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/chart.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"chart.js","sourceRoot":"","sources":["../src/chart.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chart.js","sourceRoot":"","sources":["../src/chart.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "abstract-chart",
3
- "version": "3.1.0",
3
+ "version": "3.1.4",
4
4
  "description": "Drawing charts using multiple unit of measure axes as coordinate system",
5
5
  "repository": "https://github.com/dividab/abstract-visuals/tree/master/packages/abstract-chart",
6
6
  "main": "lib/index.js",
@@ -15,12 +15,12 @@
15
15
  "README.md"
16
16
  ],
17
17
  "dependencies": {
18
- "abstract-image": "^3.1.0",
18
+ "abstract-image": "^3.2.0",
19
19
  "ramda": "^0.22.1",
20
20
  "ts-exhaustive-check": "^1.0.0"
21
21
  },
22
22
  "devDependencies": {
23
23
  "@types/ramda": "^0.25.29"
24
24
  },
25
- "gitHead": "eb933700e3c4dcfc42c17ecac358f6d9007605cd"
25
+ "gitHead": "3e9bd6f75744ad088262dd6785e58fd5df6e7f06"
26
26
  }
package/src/axis.ts CHANGED
@@ -1,234 +1,234 @@
1
- import * as R from "ramda";
2
- import * as AbstractImage from "abstract-image";
3
-
4
- export type Axis = LinearAxis | LogarithmicAxis;
5
-
6
- export interface LinearAxis {
7
- readonly type: "linear";
8
- readonly min: number;
9
- readonly max: number;
10
- readonly label: string;
11
- }
12
-
13
- export function createLinearAxis(
14
- min: number,
15
- max: number,
16
- label: string
17
- ): LinearAxis {
18
- return {
19
- type: "linear",
20
- min: min,
21
- max: max,
22
- label: label
23
- };
24
- }
25
-
26
- export interface LogarithmicAxis {
27
- readonly type: "logarithmic";
28
- readonly min: number;
29
- readonly max: number;
30
- readonly label: string;
31
- }
32
-
33
- export function createLogarithmicAxis(
34
- min: number,
35
- max: number,
36
- label: string
37
- ): LogarithmicAxis {
38
- return {
39
- type: "logarithmic",
40
- min: min,
41
- max: max,
42
- label: label
43
- };
44
- }
45
-
46
- const linearMultiples = [1, 2, 5];
47
- const linearPowers = [-2, -1, 0, 1, 2, 3, 4, 5, 6];
48
-
49
- export function getTicks(desiredTicks: number, axis: Axis): Array<number> {
50
- switch (axis.type) {
51
- case "linear":
52
- return getLinearTicks(desiredTicks, axis.min, axis.max);
53
- case "logarithmic":
54
- return getLogarithmicTicks(desiredTicks, axis.min, axis.max);
55
- default:
56
- return [];
57
- }
58
- }
59
-
60
- interface Alternative {
61
- readonly min: number;
62
- readonly step: number;
63
- readonly ticks: number;
64
- }
65
-
66
- export function getLinearTicks(
67
- desiredTicks: number,
68
- min: number,
69
- max: number
70
- ): Array<number> {
71
- let best: Alternative | undefined;
72
- for (const power of linearPowers) {
73
- const base = Math.pow(10, power);
74
- for (const multiple of linearMultiples) {
75
- const step = base * multiple;
76
- const cMin = Math.ceil(min / step);
77
- const cMax = Math.floor(max / step);
78
- const ticks = cMax - cMin + 1;
79
-
80
- if (
81
- !best ||
82
- Math.abs(best.ticks - desiredTicks) > Math.abs(ticks - desiredTicks)
83
- ) {
84
- best = {
85
- min: cMin * step,
86
- step: step,
87
- ticks: ticks
88
- };
89
- }
90
- }
91
- }
92
-
93
- if (!best) {
94
- return [];
95
- }
96
- const b = best;
97
- return R.range(0, b.ticks).map(l => b.min + b.step * l);
98
- }
99
-
100
- const logarithmicAlternatives = [
101
- [0],
102
- [0, 5],
103
- [0, 1, 2, 5],
104
- [0, 1, 2, 3, 5],
105
- [0, 1, 2, 3, 5, 8],
106
- [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
107
- ];
108
-
109
- export function getLogarithmicTicks(
110
- desiredTicks: number,
111
- min: number,
112
- max: number
113
- ): Array<number> {
114
- const minPow = Math.floor(Math.log10(min)) - 1;
115
- const maxPow = Math.ceil(Math.log10(max)) + 1;
116
- const powers = R.range(0, maxPow - minPow + 1).map(p => minPow + p);
117
- const alternatives = logarithmicAlternatives.map(stepAlt => {
118
- const altLines = powers.reduce((lines: Array<number>, power: number) => {
119
- const base = Math.pow(10, power);
120
- const powerLines = stepAlt.map(i => i * base);
121
- return lines.concat(powerLines);
122
- }, []);
123
- return altLines.filter(l => l >= min && l <= max);
124
- });
125
- const bestLines = alternatives.reduce(
126
- (prev, alt) =>
127
- Math.abs(alt.length - desiredTicks) < Math.abs(prev.length - desiredTicks)
128
- ? alt
129
- : prev
130
- );
131
- return bestLines;
132
- }
133
-
134
- export function transformPoint(
135
- point: AbstractImage.Point,
136
- xMin: number,
137
- xMax: number,
138
- yMin: number,
139
- yMax: number,
140
- xAxis: Axis | undefined,
141
- yAxis: Axis | undefined
142
- ): AbstractImage.Point {
143
- const x = transformValue(point.x, xMin, xMax, xAxis);
144
- const y = transformValue(point.y, yMin, yMax, yAxis);
145
- return AbstractImage.createPoint(x, y);
146
- }
147
-
148
- export function transformValue(
149
- value: number,
150
- min: number,
151
- max: number,
152
- axis: Axis | undefined
153
- ): number {
154
- if (!axis) {
155
- return value;
156
- }
157
- const range = max - min;
158
- switch (axis.type) {
159
- case "linear":
160
- return min + range * linearTransform(value, axis.min, axis.max);
161
- case "logarithmic":
162
- return min + range * logarithmicTransform(value, axis.min, axis.max);
163
- default:
164
- return 0;
165
- }
166
- }
167
-
168
- export function inverseTransformValue(
169
- value: number,
170
- min: number,
171
- max: number,
172
- axis: Axis | undefined
173
- ): number {
174
- if (!axis) {
175
- return value;
176
- }
177
- const range = max - min;
178
- switch (axis.type) {
179
- case "linear":
180
- return inverseLinearTransform((value - min) / range, axis.min, axis.max);
181
- case "logarithmic":
182
- return inverseLogarithmicTransform(
183
- (value - min) / range,
184
- axis.min,
185
- axis.max
186
- );
187
- default:
188
- return 0;
189
- }
190
- }
191
-
192
- export function linearTransform(
193
- value: number,
194
- min: number,
195
- max: number
196
- ): number {
197
- return (value - min) / (max - min);
198
- }
199
-
200
- export function logarithmicTransform(
201
- value: number,
202
- min: number,
203
- max: number
204
- ): number {
205
- if (value > 0) {
206
- return (
207
- (Math.log10(value) - Math.log10(min)) /
208
- (Math.log10(max) - Math.log10(min))
209
- );
210
- } else if (value < 0) {
211
- return 0.0;
212
- } else {
213
- return 0.0;
214
- }
215
- }
216
-
217
- export function inverseLinearTransform(
218
- value: number,
219
- min: number,
220
- max: number
221
- ): number {
222
- return min + value * (max - min);
223
- }
224
-
225
- export function inverseLogarithmicTransform(
226
- value: number,
227
- min: number,
228
- max: number
229
- ): number {
230
- return Math.pow(
231
- 10,
232
- value * (Math.log10(max) - Math.log10(min)) + Math.log10(min)
233
- );
234
- }
1
+ import * as R from "ramda";
2
+ import * as AbstractImage from "abstract-image";
3
+
4
+ export type Axis = LinearAxis | LogarithmicAxis;
5
+
6
+ export interface LinearAxis {
7
+ readonly type: "linear";
8
+ readonly min: number;
9
+ readonly max: number;
10
+ readonly label: string;
11
+ }
12
+
13
+ export function createLinearAxis(
14
+ min: number,
15
+ max: number,
16
+ label: string
17
+ ): LinearAxis {
18
+ return {
19
+ type: "linear",
20
+ min: min,
21
+ max: max,
22
+ label: label
23
+ };
24
+ }
25
+
26
+ export interface LogarithmicAxis {
27
+ readonly type: "logarithmic";
28
+ readonly min: number;
29
+ readonly max: number;
30
+ readonly label: string;
31
+ }
32
+
33
+ export function createLogarithmicAxis(
34
+ min: number,
35
+ max: number,
36
+ label: string
37
+ ): LogarithmicAxis {
38
+ return {
39
+ type: "logarithmic",
40
+ min: min,
41
+ max: max,
42
+ label: label
43
+ };
44
+ }
45
+
46
+ const linearMultiples = [1, 2, 5];
47
+ const linearPowers = [-2, -1, 0, 1, 2, 3, 4, 5, 6];
48
+
49
+ export function getTicks(desiredTicks: number, axis: Axis): Array<number> {
50
+ switch (axis.type) {
51
+ case "linear":
52
+ return getLinearTicks(desiredTicks, axis.min, axis.max);
53
+ case "logarithmic":
54
+ return getLogarithmicTicks(desiredTicks, axis.min, axis.max);
55
+ default:
56
+ return [];
57
+ }
58
+ }
59
+
60
+ interface Alternative {
61
+ readonly min: number;
62
+ readonly step: number;
63
+ readonly ticks: number;
64
+ }
65
+
66
+ export function getLinearTicks(
67
+ desiredTicks: number,
68
+ min: number,
69
+ max: number
70
+ ): Array<number> {
71
+ let best: Alternative | undefined;
72
+ for (const power of linearPowers) {
73
+ const base = Math.pow(10, power);
74
+ for (const multiple of linearMultiples) {
75
+ const step = base * multiple;
76
+ const cMin = Math.ceil(min / step);
77
+ const cMax = Math.floor(max / step);
78
+ const ticks = cMax - cMin + 1;
79
+
80
+ if (
81
+ !best ||
82
+ Math.abs(best.ticks - desiredTicks) > Math.abs(ticks - desiredTicks)
83
+ ) {
84
+ best = {
85
+ min: cMin * step,
86
+ step: step,
87
+ ticks: ticks
88
+ };
89
+ }
90
+ }
91
+ }
92
+
93
+ if (!best) {
94
+ return [];
95
+ }
96
+ const b = best;
97
+ return R.range(0, b.ticks).map(l => b.min + b.step * l);
98
+ }
99
+
100
+ const logarithmicAlternatives = [
101
+ [0],
102
+ [0, 5],
103
+ [0, 1, 2, 5],
104
+ [0, 1, 2, 3, 5],
105
+ [0, 1, 2, 3, 5, 8],
106
+ [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
107
+ ];
108
+
109
+ export function getLogarithmicTicks(
110
+ desiredTicks: number,
111
+ min: number,
112
+ max: number
113
+ ): Array<number> {
114
+ const minPow = Math.floor(Math.log10(min)) - 1;
115
+ const maxPow = Math.ceil(Math.log10(max)) + 1;
116
+ const powers = R.range(0, maxPow - minPow + 1).map(p => minPow + p);
117
+ const alternatives = logarithmicAlternatives.map(stepAlt => {
118
+ const altLines = powers.reduce((lines: Array<number>, power: number) => {
119
+ const base = Math.pow(10, power);
120
+ const powerLines = stepAlt.map(i => i * base);
121
+ return lines.concat(powerLines);
122
+ }, []);
123
+ return altLines.filter(l => l >= min && l <= max);
124
+ });
125
+ const bestLines = alternatives.reduce(
126
+ (prev, alt) =>
127
+ Math.abs(alt.length - desiredTicks) < Math.abs(prev.length - desiredTicks)
128
+ ? alt
129
+ : prev
130
+ );
131
+ return bestLines;
132
+ }
133
+
134
+ export function transformPoint(
135
+ point: AbstractImage.Point,
136
+ xMin: number,
137
+ xMax: number,
138
+ yMin: number,
139
+ yMax: number,
140
+ xAxis: Axis | undefined,
141
+ yAxis: Axis | undefined
142
+ ): AbstractImage.Point {
143
+ const x = transformValue(point.x, xMin, xMax, xAxis);
144
+ const y = transformValue(point.y, yMin, yMax, yAxis);
145
+ return AbstractImage.createPoint(x, y);
146
+ }
147
+
148
+ export function transformValue(
149
+ value: number,
150
+ min: number,
151
+ max: number,
152
+ axis: Axis | undefined
153
+ ): number {
154
+ if (!axis) {
155
+ return value;
156
+ }
157
+ const range = max - min;
158
+ switch (axis.type) {
159
+ case "linear":
160
+ return min + range * linearTransform(value, axis.min, axis.max);
161
+ case "logarithmic":
162
+ return min + range * logarithmicTransform(value, axis.min, axis.max);
163
+ default:
164
+ return 0;
165
+ }
166
+ }
167
+
168
+ export function inverseTransformValue(
169
+ value: number,
170
+ min: number,
171
+ max: number,
172
+ axis: Axis | undefined
173
+ ): number {
174
+ if (!axis) {
175
+ return value;
176
+ }
177
+ const range = max - min;
178
+ switch (axis.type) {
179
+ case "linear":
180
+ return inverseLinearTransform((value - min) / range, axis.min, axis.max);
181
+ case "logarithmic":
182
+ return inverseLogarithmicTransform(
183
+ (value - min) / range,
184
+ axis.min,
185
+ axis.max
186
+ );
187
+ default:
188
+ return 0;
189
+ }
190
+ }
191
+
192
+ export function linearTransform(
193
+ value: number,
194
+ min: number,
195
+ max: number
196
+ ): number {
197
+ return (value - min) / (max - min);
198
+ }
199
+
200
+ export function logarithmicTransform(
201
+ value: number,
202
+ min: number,
203
+ max: number
204
+ ): number {
205
+ if (value > 0) {
206
+ return (
207
+ (Math.log10(value) - Math.log10(min)) /
208
+ (Math.log10(max) - Math.log10(min))
209
+ );
210
+ } else if (value < 0) {
211
+ return 0.0;
212
+ } else {
213
+ return 0.0;
214
+ }
215
+ }
216
+
217
+ export function inverseLinearTransform(
218
+ value: number,
219
+ min: number,
220
+ max: number
221
+ ): number {
222
+ return min + value * (max - min);
223
+ }
224
+
225
+ export function inverseLogarithmicTransform(
226
+ value: number,
227
+ min: number,
228
+ max: number
229
+ ): number {
230
+ return Math.pow(
231
+ 10,
232
+ value * (Math.log10(max) - Math.log10(min)) + Math.log10(min)
233
+ );
234
+ }