@ironm00n/pyret-lang 0.0.5 → 0.0.6
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/package.json +1 -1
- package/src/arr/trove/charts-util.arr +71 -0
- package/src/arr/trove/charts.arr +321 -296
- package/src/js/trove/charts-lib.js +234 -70
- package/src/js/trove/image-lib.js +36 -34
- package/src/js/trove/load-lib.js +4 -0
- package/src/js/trove/make-image.js +1 -1
- package/src/js/trove/table.js +1 -1
package/package.json
CHANGED
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
provide:
|
|
2
|
+
data StackType,
|
|
3
|
+
data PointShape,
|
|
4
|
+
data TrendlineType,
|
|
5
|
+
data AxisType
|
|
6
|
+
end
|
|
7
|
+
|
|
8
|
+
data StackType:
|
|
9
|
+
| absolute
|
|
10
|
+
| relative
|
|
11
|
+
| percent
|
|
12
|
+
| grouped
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
fun check-positive-degree(v :: Number) -> Boolean block:
|
|
18
|
+
when v < 0:
|
|
19
|
+
raise("degree: degree must be non-negative")
|
|
20
|
+
end
|
|
21
|
+
true
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
data TrendlineType:
|
|
25
|
+
| no-trendline
|
|
26
|
+
| tl-linear
|
|
27
|
+
| tl-exponential
|
|
28
|
+
| tl-polynomial(degree :: NumInteger%(check-positive-degree))
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
fun check-positive-sides(v :: Number) -> Boolean block:
|
|
32
|
+
when v < 0:
|
|
33
|
+
raise("regular-polygon-shape: number of sides must be non-negative")
|
|
34
|
+
end
|
|
35
|
+
true
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
fun check-valid-dent(v :: Number) -> Boolean block:
|
|
39
|
+
when (v < 0) or (v > 1):
|
|
40
|
+
raise("regular-polygon-shape: dent must be between 0 and 1")
|
|
41
|
+
end
|
|
42
|
+
true
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
data PointShape:
|
|
46
|
+
| circle-shape
|
|
47
|
+
| regular-polygon-shape(sides :: NumInteger%(check-positive-sides), dent :: Number%(check-valid-dent))
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
fun check-non-neg-base(n :: Number) -> Boolean block:
|
|
52
|
+
when n <= 0:
|
|
53
|
+
raise("Axis scale: exponential and logarithmic scales must have positive base")
|
|
54
|
+
end
|
|
55
|
+
true
|
|
56
|
+
end
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
fun check-non-neg-power(n :: Number) -> Boolean block:
|
|
60
|
+
when n <= 0:
|
|
61
|
+
raise("Axis scale: power must be positive")
|
|
62
|
+
end
|
|
63
|
+
true
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
data AxisType:
|
|
67
|
+
| at-linear
|
|
68
|
+
| at-power(pow :: Number%(check-non-neg-power))
|
|
69
|
+
| at-log(base :: Number%(check-non-neg-base))
|
|
70
|
+
| at-symlog(constant :: Number%(check-non-neg-base))
|
|
71
|
+
end
|