abstract-chart 7.5.1 → 8.0.1
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/CHANGELOG.md +41 -0
- package/README.md +15 -18
- package/lib/chart.d.ts +19 -10
- package/lib/chart.d.ts.map +1 -1
- package/lib/chart.js +289 -140
- package/lib/chart.js.map +1 -1
- package/package.json +3 -3
- package/src/chart.ts +453 -173
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,47 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/) and this project adheres to [Semantic Versioning](http://semver.org/).
|
|
4
4
|
|
|
5
|
+
## [8.0.0] - 2024-06-14
|
|
6
|
+
|
|
7
|
+
### Added
|
|
8
|
+
|
|
9
|
+
- Added support for multiple axises per side of the chart grid. The data points will always refer to the first axis of the indicated side. Migrating from old to new is simple, just change it to an array.
|
|
10
|
+
|
|
11
|
+
Old:
|
|
12
|
+
|
|
13
|
+
```
|
|
14
|
+
createChart({
|
|
15
|
+
...
|
|
16
|
+
xAxisBottom: myXAxis,
|
|
17
|
+
...
|
|
18
|
+
})
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
New:
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
createChart({
|
|
25
|
+
...
|
|
26
|
+
xAxisesBottom: [myXAxis],
|
|
27
|
+
...
|
|
28
|
+
})
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
- Added `axisWidth` for customizing the width of the axises.
|
|
32
|
+
- Added support for data axises, a separately rendered axis type whose tick labels are a function values. Just supply some points defining the function These are rendered outside of the normal axises.
|
|
33
|
+
|
|
34
|
+
### Changed
|
|
35
|
+
|
|
36
|
+
- Padding is now additional space outside of the rendered elements, so the layout from left to right is now like this, the x-axises and paddings and heights are calculated in the same manner:
|
|
37
|
+
|
|
38
|
+
1. Empty space defined by `padding.left`.
|
|
39
|
+
2. One data axis per `chartDataAxisesLeft` in reverse order, each `axisWidth` wide.
|
|
40
|
+
3. One data axis per `yAxisesLeft` in reverse order, each `axisWidth` wide.
|
|
41
|
+
4. Grid area filling up remaining space.
|
|
42
|
+
5. One data axis per `yAxisesRight` in normal order, each `axisWidth` wide.
|
|
43
|
+
6. One data axis per `chartDataAxisesRight` in normal order, each `axisWidth` wide.
|
|
44
|
+
7. Empty space defined by `padding.right`.
|
|
45
|
+
|
|
5
46
|
## [7.4.1] - 2024-05-29
|
|
6
47
|
|
|
7
48
|
### Changed
|
package/README.md
CHANGED
|
@@ -27,9 +27,7 @@ import * as React from "react";
|
|
|
27
27
|
import * as AbstractChart from "abstract-chart";
|
|
28
28
|
import * as AbstractImage from "abstract-image";
|
|
29
29
|
|
|
30
|
-
const svg = AbstractImage.createSvg(
|
|
31
|
-
AbstractChart.renderChart(generateLineChart())
|
|
32
|
-
);
|
|
30
|
+
const svg = AbstractImage.createSvg(AbstractChart.renderChart(generateLineChart()));
|
|
33
31
|
|
|
34
32
|
function generateLineChart(): AbstractChart.Chart {
|
|
35
33
|
const series = [
|
|
@@ -43,12 +41,12 @@ function generateLineChart(): AbstractChart.Chart {
|
|
|
43
41
|
{ x: 5, y: 0 },
|
|
44
42
|
{ x: 6, y: 0 },
|
|
45
43
|
{ x: 7, y: 0 },
|
|
46
|
-
{ x: 8, y: 0 }
|
|
44
|
+
{ x: 8, y: 0 },
|
|
47
45
|
],
|
|
48
46
|
color: AbstractImage.red,
|
|
49
47
|
label: "How bad you feel",
|
|
50
48
|
xAxis: "bottom",
|
|
51
|
-
yAxis: "left"
|
|
49
|
+
yAxis: "left",
|
|
52
50
|
}),
|
|
53
51
|
AbstractChart.createChartLine({
|
|
54
52
|
points: [
|
|
@@ -60,23 +58,23 @@ function generateLineChart(): AbstractChart.Chart {
|
|
|
60
58
|
{ x: 5, y: 3 },
|
|
61
59
|
{ x: 6, y: 2.8 },
|
|
62
60
|
{ x: 7, y: 2 },
|
|
63
|
-
{ x: 8, y: 1.5 }
|
|
61
|
+
{ x: 8, y: 1.5 },
|
|
64
62
|
],
|
|
65
63
|
color: AbstractImage.blue,
|
|
66
64
|
label: "How bad you sound",
|
|
67
65
|
xAxis: "bottom",
|
|
68
|
-
yAxis: "left"
|
|
69
|
-
})
|
|
66
|
+
yAxis: "left",
|
|
67
|
+
}),
|
|
70
68
|
];
|
|
71
69
|
|
|
72
|
-
const [xMin, xMax] = getLineRange(series, point => point.x);
|
|
73
|
-
const [yMin, yMax] = getLineRange(series, point => point.y);
|
|
70
|
+
const [xMin, xMax] = getLineRange(series, (point) => point.x);
|
|
71
|
+
const [yMin, yMax] = getLineRange(series, (point) => point.y);
|
|
74
72
|
|
|
75
73
|
const chart = AbstractChart.createChart({
|
|
76
74
|
chartLines: series,
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
labelLayout: "center"
|
|
75
|
+
xAxisesBottom: [AbstractChart.createLinearAxis(xMin, xMax, "Days with cold")],
|
|
76
|
+
yAxisesLeft: [AbstractChart.createLinearAxis(yMin, yMax + 1, "Badness")],
|
|
77
|
+
labelLayout: "center",
|
|
80
78
|
});
|
|
81
79
|
|
|
82
80
|
return chart;
|
|
@@ -86,12 +84,11 @@ function getLineRange(
|
|
|
86
84
|
series: AbstractChart.ChartLine[],
|
|
87
85
|
axisSelector: (point: AbstractImage.Point) => number
|
|
88
86
|
): [number, number] {
|
|
89
|
-
const axisValues = series
|
|
90
|
-
(
|
|
87
|
+
const axisValues = series
|
|
88
|
+
.map((serie) => serie.points.map(axisSelector))
|
|
89
|
+
.reduce((soFar, current) => {
|
|
91
90
|
return [...soFar, ...current];
|
|
92
|
-
},
|
|
93
|
-
[] as ReadonlyArray<number>
|
|
94
|
-
);
|
|
91
|
+
}, [] as ReadonlyArray<number>);
|
|
95
92
|
return [Math.min(...axisValues), Math.max(...axisValues)];
|
|
96
93
|
}
|
|
97
94
|
```
|
package/lib/chart.d.ts
CHANGED
|
@@ -10,10 +10,14 @@ export interface Chart {
|
|
|
10
10
|
readonly chartPoints: Array<ChartPoint>;
|
|
11
11
|
readonly chartLines: Array<ChartLine>;
|
|
12
12
|
readonly chartStack: ChartStack;
|
|
13
|
-
readonly
|
|
14
|
-
readonly
|
|
15
|
-
readonly
|
|
16
|
-
readonly
|
|
13
|
+
readonly chartDataAxisesBottom: Array<ChartDataAxis>;
|
|
14
|
+
readonly chartDataAxisesTop: Array<ChartDataAxis>;
|
|
15
|
+
readonly chartDataAxisesLeft: Array<ChartDataAxis>;
|
|
16
|
+
readonly chartDataAxisesRight: Array<ChartDataAxis>;
|
|
17
|
+
readonly xAxisesBottom: ReadonlyArray<Axis.Axis>;
|
|
18
|
+
readonly xAxisesTop: ReadonlyArray<Axis.Axis>;
|
|
19
|
+
readonly yAxisesLeft: ReadonlyArray<Axis.Axis>;
|
|
20
|
+
readonly yAxisesRight: ReadonlyArray<Axis.Axis>;
|
|
17
21
|
readonly backgroundColor: AI.Color;
|
|
18
22
|
readonly xGrid: ChartGrid;
|
|
19
23
|
readonly yGrid: ChartGrid;
|
|
@@ -23,6 +27,7 @@ export interface Chart {
|
|
|
23
27
|
readonly textOutlineColor: AI.Color;
|
|
24
28
|
readonly labelLayout: LabelLayout;
|
|
25
29
|
readonly padding: Padding;
|
|
30
|
+
readonly axisWidth: number;
|
|
26
31
|
}
|
|
27
32
|
export type ChartGrid = {
|
|
28
33
|
readonly color: AI.Color;
|
|
@@ -89,13 +94,17 @@ export interface ChartStack {
|
|
|
89
94
|
}
|
|
90
95
|
export type ChartStackProps = Partial<ChartStack>;
|
|
91
96
|
export declare function createChartStack(props: ChartStackProps): ChartStack;
|
|
92
|
-
export
|
|
97
|
+
export type ChartDataAxis = Axis.AxisBase & {
|
|
98
|
+
readonly points: Array<AI.Point>;
|
|
99
|
+
};
|
|
100
|
+
export declare function createChartDataAxis(points: Array<AI.Point>, label: string, labelRotation?: number, tickLabelDisp?: number, labelColor?: AI.Color, tickLabelColor?: AI.Color, thickness?: number, axisColor?: AI.Color, tickFontSize?: number, axisFontSize?: number, id?: string): ChartDataAxis;
|
|
101
|
+
export declare function inverseTransformPoint(point: AI.Point, chart: Chart, xAxis: XAxis, yAxis: YAxis): AI.Point | undefined;
|
|
93
102
|
export declare function renderChart(chart: Chart): AI.AbstractImage;
|
|
94
103
|
export declare function generateBackground(xMin: number, xMax: number, yMin: number, yMax: number, chart: Chart): AI.Component;
|
|
95
|
-
export declare function
|
|
96
|
-
export declare function
|
|
97
|
-
export declare function
|
|
98
|
-
export declare function
|
|
104
|
+
export declare function generateXAxises(xAxis: XAxis, xNumTicks: number, axises: ReadonlyArray<Axis.Axis>, xMin: number, xMax: number, yMin: number, yMax: number, chart: Chart): AI.Component;
|
|
105
|
+
export declare function generateYAxises(yAxis: YAxis, yNumTicks: number, axises: ReadonlyArray<Axis.Axis>, xMin: number, xMax: number, yMin: number, yMax: number, chart: Chart): AI.Component;
|
|
106
|
+
export declare function generateDataAxisesX(xAxis: XAxis, axises: Array<ChartDataAxis>, numTicks: number, xMin: number, xMax: number, yMin: number, yMax: number, chart: Chart): AI.Component;
|
|
107
|
+
export declare function generateDataAxisesY(yAxis: YAxis, axises: Array<ChartDataAxis>, numTicks: number, xMin: number, xMax: number, yMin: number, yMax: number, chart: Chart): AI.Component;
|
|
99
108
|
export declare function generateStack(xMin: number, xMax: number, yMin: number, yMax: number, chart: Chart): AI.Component;
|
|
100
109
|
export declare function generateLines(xMin: number, xMax: number, yMin: number, yMax: number, chart: Chart): AI.Component;
|
|
101
110
|
export declare function generatePoints(xMin: number, xMax: number, yMin: number, yMax: number, chart: Chart): AI.Component;
|
|
@@ -110,6 +119,6 @@ export declare function generateYAxisLines(xMin: number, xMax: number, yMin: num
|
|
|
110
119
|
readonly thickness: number;
|
|
111
120
|
}): AI.Component;
|
|
112
121
|
export declare function generateYAxisLabels(x: number, yMin: number, yMax: number, growHorizontal: AI.GrowthDirection, yTicks: ReadonlyArray<Axis.DiscreteAxisPoint>, yAxis: Axis.Axis, chart: Chart): AI.Component;
|
|
113
|
-
export declare function generateYAxisLabel(x: number, y: number, horizontalGrowthDirection: AI.GrowthDirection, verticalGrowthDirection: AI.GrowthDirection, axis: Axis.Axis, chart: Chart): AI.Component;
|
|
122
|
+
export declare function generateYAxisLabel(x: number, y: number, rotation: number, horizontalGrowthDirection: AI.GrowthDirection, verticalGrowthDirection: AI.GrowthDirection, axis: Axis.Axis, chart: Chart): AI.Component;
|
|
114
123
|
export {};
|
|
115
124
|
//# sourceMappingURL=chart.d.ts.map
|
package/lib/chart.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chart.d.ts","sourceRoot":"","sources":["../src/chart.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"chart.d.ts","sourceRoot":"","sources":["../src/chart.ts"],"names":[],"mappings":"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"}
|