@milaboratories/miplots4 1.3.0 → 1.4.0
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/dist/bubble/BubbleSettingsImpl.d.ts +4 -2
- package/dist/bubble/BubbleSettingsImpl.d.ts.map +1 -1
- package/dist/bubble/BubbleSettingsImpl.js +32 -29
- package/dist/bubble/BubbleSettingsImpl.js.map +1 -1
- package/dist/bubble/getGroupedCellsData.d.ts +1 -1
- package/dist/bubble/getGroupedCellsData.d.ts.map +1 -1
- package/dist/bubble/getGroupedCellsData.js +2 -2
- package/dist/bubble/getGroupedCellsData.js.map +1 -1
- package/dist/bubble/index.d.ts.map +1 -1
- package/dist/bubble/index.js +16 -15
- package/dist/bubble/index.js.map +1 -1
- package/dist/heatmap/HeatmapSettingsImpl.d.ts +4 -2
- package/dist/heatmap/HeatmapSettingsImpl.d.ts.map +1 -1
- package/dist/heatmap/HeatmapSettingsImpl.js +20 -17
- package/dist/heatmap/HeatmapSettingsImpl.js.map +1 -1
- package/dist/heatmap/fillCellsData.d.ts +3 -3
- package/dist/heatmap/fillCellsData.d.ts.map +1 -1
- package/dist/heatmap/fillCellsData.js +89 -94
- package/dist/heatmap/fillCellsData.js.map +1 -1
- package/dist/heatmap/getCells.d.ts +3 -3
- package/dist/heatmap/getCells.d.ts.map +1 -1
- package/dist/heatmap/getCells.js +3 -3
- package/dist/heatmap/getCells.js.map +1 -1
- package/dist/heatmap/index.d.ts.map +1 -1
- package/dist/heatmap/index.js +21 -22
- package/dist/heatmap/index.js.map +1 -1
- package/dist/heatmap/labelParts.d.ts +21 -0
- package/dist/heatmap/labelParts.d.ts.map +1 -0
- package/dist/heatmap/labelParts.js +55 -0
- package/dist/heatmap/labelParts.js.map +1 -0
- package/dist/types/bubble.d.ts +26 -16
- package/dist/types/bubble.d.ts.map +1 -1
- package/dist/types/bubble.js +4 -3
- package/dist/types/bubble.js.map +1 -1
- package/dist/types/heatmap.d.ts +22 -12
- package/dist/types/heatmap.d.ts.map +1 -1
- package/dist/types/heatmap.js +4 -3
- package/dist/types/heatmap.js.map +1 -1
- package/dist/utils/compareColumnGroups.d.ts +4 -0
- package/dist/utils/compareColumnGroups.d.ts.map +1 -0
- package/dist/utils/compareColumnGroups.js +7 -0
- package/dist/utils/compareColumnGroups.js.map +1 -0
- package/package.json +1 -1
|
@@ -12,10 +12,10 @@ export declare class BubbleSettingsImpl implements SettingsInterface {
|
|
|
12
12
|
};
|
|
13
13
|
readonly valueColumnSize: ColumnName;
|
|
14
14
|
readonly valueColumnColor: ColumnName;
|
|
15
|
-
readonly
|
|
15
|
+
readonly x: ColumnName[];
|
|
16
16
|
readonly xGroupBy: ColumnName[];
|
|
17
17
|
readonly xSortBy: ColumnName[];
|
|
18
|
-
readonly
|
|
18
|
+
readonly y: ColumnName[];
|
|
19
19
|
readonly yGroupBy: ColumnName[];
|
|
20
20
|
readonly ySortBy: ColumnName[];
|
|
21
21
|
readonly facetBy: ColumnName[];
|
|
@@ -54,6 +54,7 @@ export declare class BubbleSettingsImpl implements SettingsInterface {
|
|
|
54
54
|
position: 'left' | 'right';
|
|
55
55
|
axisLabelsAngle: 0 | 45 | 90;
|
|
56
56
|
sorting: 'asc' | 'desc';
|
|
57
|
+
labelParts: ColumnName['value'][] | null;
|
|
57
58
|
};
|
|
58
59
|
readonly xAxis: {
|
|
59
60
|
title: string;
|
|
@@ -63,6 +64,7 @@ export declare class BubbleSettingsImpl implements SettingsInterface {
|
|
|
63
64
|
position: 'bottom' | 'top';
|
|
64
65
|
axisLabelsAngle: 0 | 45 | 90;
|
|
65
66
|
sorting: 'asc' | 'desc';
|
|
67
|
+
labelParts: ColumnName['value'][] | null;
|
|
66
68
|
};
|
|
67
69
|
readonly frame: {
|
|
68
70
|
type: FrameType;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BubbleSettingsImpl.d.ts","sourceRoot":"","sources":["../../src/bubble/BubbleSettingsImpl.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACR,iBAAiB,EACjB,cAAc,EACd,UAAU,EACV,SAAS,EACT,cAAc,EACd,sBAAsB,EACtB,mBAAmB,EACnB,iBAAiB,EACjB,aAAa,EAChB,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"BubbleSettingsImpl.d.ts","sourceRoot":"","sources":["../../src/bubble/BubbleSettingsImpl.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +1,18 @@
|
|
|
1
1
|
import "../constants.js";
|
|
2
2
|
import { BubblesSettingsSchema as e } from "../types/bubble.js";
|
|
3
3
|
import "../types/index.js";
|
|
4
|
-
import t from "
|
|
5
|
-
|
|
4
|
+
import { joinAxisTitle as t, resolveLabelParts as n } from "../heatmap/labelParts.js";
|
|
5
|
+
import r from "lodash";
|
|
6
|
+
var i = class {
|
|
6
7
|
id;
|
|
7
8
|
type = "bubble";
|
|
8
9
|
facetSettings;
|
|
9
10
|
valueColumnSize;
|
|
10
11
|
valueColumnColor;
|
|
11
|
-
|
|
12
|
+
x;
|
|
12
13
|
xGroupBy;
|
|
13
14
|
xSortBy;
|
|
14
|
-
|
|
15
|
+
y;
|
|
15
16
|
yGroupBy;
|
|
16
17
|
ySortBy;
|
|
17
18
|
facetBy;
|
|
@@ -24,75 +25,77 @@ var n = class {
|
|
|
24
25
|
keysOrder;
|
|
25
26
|
chartSettings;
|
|
26
27
|
aes;
|
|
27
|
-
constructor(
|
|
28
|
-
e.parse(
|
|
28
|
+
constructor(i) {
|
|
29
|
+
e.parse(i), this.id = r.uniqueId("settings"), this.facetSettings = {
|
|
29
30
|
sharedX: !0,
|
|
30
31
|
sharedY: !0,
|
|
31
32
|
titlePosition: "left",
|
|
32
|
-
order:
|
|
33
|
-
...
|
|
34
|
-
}, this.facetBy =
|
|
35
|
-
let
|
|
33
|
+
order: i.facetSettings?.order ?? null,
|
|
34
|
+
...i.facetSettings
|
|
35
|
+
}, this.facetBy = i.facetBy ?? [], this.valueColumnSize = i.valueSize, this.valueColumnColor = i.valueColor, this.x = i.x, this.xGroupBy = i.xGroupBy ?? [], this.xSortBy = i.xSortBy ?? [], this.y = i.y, this.yGroupBy = i.yGroupBy ?? [], this.ySortBy = i.ySortBy ?? [], this.NAValueAs = i.NAValueAs ?? null, this.transform = i.transform ?? null, this.showEmptyRows = i.showEmptyRows ?? !1, this.showEmptyColumns = i.showEmptyColumns ?? !1, this.keysOrder = i.keysOrder ?? {}, this.normalization = i.normalization ?? null;
|
|
36
|
+
let a = i.size?.cellSize ?? null;
|
|
36
37
|
this.chartSettings = {
|
|
37
38
|
size: {
|
|
38
|
-
width:
|
|
39
|
-
height:
|
|
40
|
-
cellSize:
|
|
39
|
+
width: a ? null : i?.size?.width ?? (this.facetBy.length ? 400 : 600),
|
|
40
|
+
height: a ? null : i?.size?.height ?? (this.facetBy.length ? 250 : 350),
|
|
41
|
+
cellSize: a
|
|
41
42
|
},
|
|
42
43
|
title: {
|
|
43
44
|
position: "center",
|
|
44
45
|
show: !0,
|
|
45
|
-
...
|
|
46
|
-
name:
|
|
46
|
+
...i.title,
|
|
47
|
+
name: i.title?.name ?? "Chart"
|
|
47
48
|
},
|
|
48
49
|
yAxis: {
|
|
49
|
-
title: n.
|
|
50
|
+
title: t(n(i.y, i.yAxis?.labelParts)),
|
|
50
51
|
showTicks: !0,
|
|
51
52
|
showTitle: !0,
|
|
52
53
|
showAxisLabels: !0,
|
|
53
54
|
position: "left",
|
|
54
55
|
axisLabelsAngle: 90,
|
|
55
56
|
sorting: "asc",
|
|
56
|
-
|
|
57
|
+
labelParts: null,
|
|
58
|
+
...i.yAxis
|
|
57
59
|
},
|
|
58
60
|
xAxis: {
|
|
59
|
-
title: n.
|
|
61
|
+
title: t(n(i.x, i.xAxis?.labelParts)),
|
|
60
62
|
showTicks: !0,
|
|
61
63
|
showTitle: !0,
|
|
62
64
|
showAxisLabels: !0,
|
|
63
65
|
position: "bottom",
|
|
64
66
|
axisLabelsAngle: 90,
|
|
65
67
|
sorting: "asc",
|
|
66
|
-
|
|
68
|
+
labelParts: null,
|
|
69
|
+
...i.xAxis
|
|
67
70
|
},
|
|
68
|
-
frame: { type:
|
|
71
|
+
frame: { type: i.frame?.type ?? "full" },
|
|
69
72
|
legend: {
|
|
70
73
|
show: !0,
|
|
71
74
|
position: "right",
|
|
72
|
-
...
|
|
75
|
+
...i.legend
|
|
73
76
|
},
|
|
74
77
|
tooltips: {
|
|
75
78
|
show: !0,
|
|
76
|
-
...
|
|
79
|
+
...i.tooltips
|
|
77
80
|
}
|
|
78
81
|
}, this.aggregation = {
|
|
79
82
|
x: !1,
|
|
80
83
|
y: !1,
|
|
81
84
|
method: "min",
|
|
82
|
-
...
|
|
85
|
+
...i.aggregation
|
|
83
86
|
}, this.aes = {
|
|
84
|
-
minRadius:
|
|
85
|
-
maxRadius:
|
|
86
|
-
colorsList:
|
|
87
|
+
minRadius: i.aes?.minRadius ?? 3,
|
|
88
|
+
maxRadius: i.aes?.maxRadius ?? 20,
|
|
89
|
+
colorsList: i.aes?.colorsList ?? [
|
|
87
90
|
"black",
|
|
88
91
|
"white",
|
|
89
92
|
"red"
|
|
90
93
|
],
|
|
91
|
-
cellStrokeColor:
|
|
92
|
-
emptyCellColor:
|
|
94
|
+
cellStrokeColor: i.aes?.cellStrokeColor ?? "#110529",
|
|
95
|
+
emptyCellColor: i.aes?.emptyCellColor ?? "white"
|
|
93
96
|
};
|
|
94
97
|
}
|
|
95
98
|
};
|
|
96
|
-
export {
|
|
99
|
+
export { i as BubbleSettingsImpl };
|
|
97
100
|
|
|
98
101
|
//# sourceMappingURL=BubbleSettingsImpl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BubbleSettingsImpl.js","names":[],"sources":["../../src/bubble/BubbleSettingsImpl.ts"],"sourcesContent":["import { BLACK, DEFAULT_HEIGHT, DEFAULT_HEIGHT_SMALL, DEFAULT_WIDTH, DEFAULT_WIDTH_SMALL } from '../constants';\nimport { BubblesSettingsSchema } from '../types';\nimport type {\n AggregationMethod,\n BubbleSettings,\n ColumnName,\n FrameType,\n LegendPosition,\n NormalizationDirection,\n NormalizationMethod,\n SettingsInterface,\n TitlePosition,\n} from '../types';\nimport lodash from 'lodash';\n\nexport class BubbleSettingsImpl implements SettingsInterface {\n readonly id: string;\n readonly type = 'bubble';\n readonly facetSettings: {\n order: string[] | null;\n sharedX: boolean;\n sharedY: boolean;\n nRows?: number;\n nCols?: number;\n titlePosition: 'left' | 'center' | 'right';\n };\n readonly valueColumnSize: ColumnName;\n readonly valueColumnColor: ColumnName;\n readonly
|
|
1
|
+
{"version":3,"file":"BubbleSettingsImpl.js","names":[],"sources":["../../src/bubble/BubbleSettingsImpl.ts"],"sourcesContent":["import { BLACK, DEFAULT_HEIGHT, DEFAULT_HEIGHT_SMALL, DEFAULT_WIDTH, DEFAULT_WIDTH_SMALL } from '../constants';\nimport { BubblesSettingsSchema } from '../types';\nimport type {\n AggregationMethod,\n BubbleSettings,\n ColumnName,\n FrameType,\n LegendPosition,\n NormalizationDirection,\n NormalizationMethod,\n SettingsInterface,\n TitlePosition,\n} from '../types';\nimport lodash from 'lodash';\nimport { joinAxisTitle, resolveLabelParts } from '../heatmap/labelParts';\n\nexport class BubbleSettingsImpl implements SettingsInterface {\n readonly id: string;\n readonly type = 'bubble';\n readonly facetSettings: {\n order: string[] | null;\n sharedX: boolean;\n sharedY: boolean;\n nRows?: number;\n nCols?: number;\n titlePosition: 'left' | 'center' | 'right';\n };\n readonly valueColumnSize: ColumnName;\n readonly valueColumnColor: ColumnName;\n readonly x: ColumnName[];\n readonly xGroupBy: ColumnName[];\n readonly xSortBy: ColumnName[];\n readonly y: ColumnName[];\n readonly yGroupBy: ColumnName[];\n readonly ySortBy: ColumnName[];\n readonly facetBy: ColumnName[];\n readonly normalization: {\n direction: NormalizationDirection;\n method: NormalizationMethod;\n colorRange?: number[];\n sizeRange?: number[];\n } | null;\n readonly aggregation: {\n x: boolean;\n y: boolean;\n method: AggregationMethod;\n };\n readonly NAValueAs: number | null;\n readonly transform: 'log' | null;\n readonly showEmptyRows: boolean;\n readonly showEmptyColumns: boolean;\n readonly keysOrder: Record<string, string[]>;\n readonly chartSettings: {\n readonly size: { width: number | null; height: number | null, cellSize: number | null };\n readonly title: { name: string; show: boolean; position: TitlePosition };\n readonly yAxis: {\n title: string;\n showTicks: boolean;\n showTitle: boolean;\n showAxisLabels: boolean;\n position: 'left' | 'right';\n axisLabelsAngle: 0 | 45 | 90;\n sorting: 'asc' | 'desc';\n labelParts: ColumnName['value'][] | null;\n };\n readonly xAxis: {\n title: string;\n showTicks: boolean;\n showTitle: boolean;\n showAxisLabels: boolean;\n position: 'bottom' | 'top';\n axisLabelsAngle: 0 | 45 | 90;\n sorting: 'asc' | 'desc';\n labelParts: ColumnName['value'][] | null;\n };\n readonly frame: { type: FrameType };\n readonly legend: { show: boolean; position: LegendPosition };\n readonly tooltips: { show: boolean; content?: ColumnName[] };\n };\n readonly aes: {\n minRadius: number;\n maxRadius: number;\n colorsList: string[];\n cellStrokeColor: string;\n emptyCellColor: string;\n };\n\n constructor(settings: BubbleSettings) {\n BubblesSettingsSchema.parse(settings);\n this.id = lodash.uniqueId('settings');\n this.facetSettings = { sharedX: true, sharedY: true, titlePosition: 'left', order: settings.facetSettings?.order ?? null, ...settings.facetSettings };\n this.facetBy = settings.facetBy ?? [];\n this.valueColumnSize = settings.valueSize;\n this.valueColumnColor = settings.valueColor;\n this.x = settings.x;\n this.xGroupBy = settings.xGroupBy ?? [];\n this.xSortBy = settings.xSortBy ?? [];\n this.y = settings.y;\n this.yGroupBy = settings.yGroupBy ?? [];\n this.ySortBy = settings.ySortBy ?? [];\n this.NAValueAs = settings.NAValueAs ?? null;\n this.transform = settings.transform ?? null;\n this.showEmptyRows = settings.showEmptyRows ?? false;\n this.showEmptyColumns = settings.showEmptyColumns ?? false;\n this.keysOrder = settings.keysOrder ?? {};\n this.normalization = settings.normalization ?? null;\n\n const cellSize = settings.size?.cellSize ?? null;\n const width = cellSize ? null : settings?.size?.width ?? (this.facetBy.length ? DEFAULT_WIDTH_SMALL : DEFAULT_WIDTH);\n const height = cellSize ? null : settings?.size?.height ?? (this.facetBy.length ? DEFAULT_HEIGHT_SMALL : DEFAULT_HEIGHT);\n this.chartSettings = {\n size: { width, height, cellSize },\n title: {\n position: 'center',\n show: true,\n ...settings.title,\n name: settings.title?.name ?? 'Chart',\n },\n yAxis: {\n title: joinAxisTitle(resolveLabelParts(settings.y, settings.yAxis?.labelParts)),\n showTicks: true,\n showTitle: true,\n showAxisLabels: true,\n position: 'left',\n axisLabelsAngle: 90,\n sorting: 'asc',\n labelParts: null,\n ...settings.yAxis,\n },\n xAxis: {\n title: joinAxisTitle(resolveLabelParts(settings.x, settings.xAxis?.labelParts)),\n showTicks: true,\n showTitle: true,\n showAxisLabels: true,\n position: 'bottom',\n axisLabelsAngle: 90,\n sorting: 'asc',\n labelParts: null,\n ...settings.xAxis,\n },\n frame: { type: settings.frame?.type ?? 'full' },\n legend: {\n show: true,\n position: 'right',\n ...settings.legend,\n },\n tooltips: {\n show: true,\n ...settings.tooltips,\n },\n };\n\n this.aggregation = {\n x: false,\n y: false,\n method: 'min',\n ...settings.aggregation\n };\n\n this.aes = {\n minRadius: settings.aes?.minRadius ?? 3,\n maxRadius: settings.aes?.maxRadius ?? 20,\n colorsList: settings.aes?.colorsList ?? ['black', 'white', 'red'],\n cellStrokeColor: settings.aes?.cellStrokeColor ?? BLACK,\n emptyCellColor: settings.aes?.emptyCellColor ?? 'white',\n };\n }\n}\n"],"mappings":";;;;;AAgBA,IAAa,IAAb,MAA6D;CACzD;CACA,OAAgB;CAChB;CAQA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CAMA;CAKA;CACA;CACA;CACA;CACA;CACA;CA2BA;CAQA,YAAY,GAA0B;AAkBlC,EAjBA,EAAsB,MAAM,EAAS,EACrC,KAAK,KAAK,EAAO,SAAS,WAAW,EACrC,KAAK,gBAAgB;GAAE,SAAS;GAAM,SAAS;GAAM,eAAe;GAAQ,OAAO,EAAS,eAAe,SAAS;GAAM,GAAG,EAAS;GAAe,EACrJ,KAAK,UAAU,EAAS,WAAW,EAAE,EACrC,KAAK,kBAAkB,EAAS,WAChC,KAAK,mBAAmB,EAAS,YACjC,KAAK,IAAI,EAAS,GAClB,KAAK,WAAW,EAAS,YAAY,EAAE,EACvC,KAAK,UAAU,EAAS,WAAW,EAAE,EACrC,KAAK,IAAI,EAAS,GAClB,KAAK,WAAW,EAAS,YAAY,EAAE,EACvC,KAAK,UAAU,EAAS,WAAW,EAAE,EACrC,KAAK,YAAY,EAAS,aAAa,MACvC,KAAK,YAAY,EAAS,aAAa,MACvC,KAAK,gBAAgB,EAAS,iBAAiB,IAC/C,KAAK,mBAAmB,EAAS,oBAAoB,IACrD,KAAK,YAAY,EAAS,aAAa,EAAE,EACzC,KAAK,gBAAgB,EAAS,iBAAiB;EAE/C,IAAM,IAAW,EAAS,MAAM,YAAY;AAoD5C,EAjDA,KAAK,gBAAgB;GACjB,MAAM;IAAE,OAHE,IAAW,OAAO,GAAU,MAAM,UAAU,KAAK,QAAQ,SAAA,MAAA;IAGpD,QAFJ,IAAW,OAAO,GAAU,MAAM,WAAW,KAAK,QAAQ,SAAA,MAAA;IAE9C;IAAU;GACjC,OAAO;IACH,UAAU;IACV,MAAM;IACN,GAAG,EAAS;IACZ,MAAM,EAAS,OAAO,QAAQ;IACjC;GACD,OAAO;IACH,OAAO,EAAc,EAAkB,EAAS,GAAG,EAAS,OAAO,WAAW,CAAC;IAC/E,WAAW;IACX,WAAW;IACX,gBAAgB;IAChB,UAAU;IACV,iBAAiB;IACjB,SAAS;IACT,YAAY;IACZ,GAAG,EAAS;IACf;GACD,OAAO;IACH,OAAO,EAAc,EAAkB,EAAS,GAAG,EAAS,OAAO,WAAW,CAAC;IAC/E,WAAW;IACX,WAAW;IACX,gBAAgB;IAChB,UAAU;IACV,iBAAiB;IACjB,SAAS;IACT,YAAY;IACZ,GAAG,EAAS;IACf;GACD,OAAO,EAAE,MAAM,EAAS,OAAO,QAAQ,QAAQ;GAC/C,QAAQ;IACJ,MAAM;IACN,UAAU;IACV,GAAG,EAAS;IACf;GACD,UAAU;IACN,MAAM;IACN,GAAG,EAAS;IACf;GACJ,EAED,KAAK,cAAc;GACf,GAAG;GACH,GAAG;GACH,QAAQ;GACR,GAAG,EAAS;GACf,EAED,KAAK,MAAM;GACP,WAAW,EAAS,KAAK,aAAa;GACtC,WAAW,EAAS,KAAK,aAAa;GACtC,YAAY,EAAS,KAAK,cAAc;IAAC;IAAS;IAAS;IAAM;GACjE,iBAAiB,EAAS,KAAK,mBAAA;GAC/B,gBAAgB,EAAS,KAAK,kBAAkB;GACnD"}
|
|
@@ -5,6 +5,6 @@ import { Cell, GroupedCellsData } from '../heatmap/fillCellsData';
|
|
|
5
5
|
type BubbleDataFields = 'sizeValue' | 'colorValue';
|
|
6
6
|
export type CellBubble = Cell<BubbleDataFields>;
|
|
7
7
|
export type GroupedCellsBubble = GroupedCellsData<BubbleDataFields>;
|
|
8
|
-
export declare function getGroupedCellsData(data: DataFrame,
|
|
8
|
+
export declare function getGroupedCellsData(data: DataFrame, x: ColumnName[], y: ColumnName[], valueColumnSize: ColumnName, valueColumnColor: ColumnName, facetBy: ColumnName[], xGroupBy: ColumnName[], yGroupBy: ColumnName[], xSortBy: ColumnName[], ySortBy: ColumnName[], facetSettings: BubbleSettingsImpl['facetSettings'], normalization: BubbleSettingsImpl['normalization'], NAValueAs: BubbleSettingsImpl['NAValueAs'], transform: BubbleSettingsImpl['transform'], keysOrder: BubbleSettingsImpl['keysOrder'], xAxis: BubbleSettingsImpl['chartSettings']['xAxis'], yAxis: BubbleSettingsImpl['chartSettings']['yAxis'], aggregation: BubbleSettingsImpl['aggregation'], showEmptyRows?: boolean, showEmptyColumns?: boolean): GroupedCellsBubble;
|
|
9
9
|
export {};
|
|
10
10
|
//# sourceMappingURL=getGroupedCellsData.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getGroupedCellsData.d.ts","sourceRoot":"","sources":["../../src/bubble/getGroupedCellsData.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EAAE,KAAK,IAAI,EAAiB,KAAK,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAI3F,KAAK,gBAAgB,GAAG,WAAW,GAAC,YAAY,CAAC;AACjD,MAAM,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC;AAChD,MAAM,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;AAoCpE,wBAAgB,mBAAmB,CAC/B,IAAI,EAAE,SAAS,EACf,
|
|
1
|
+
{"version":3,"file":"getGroupedCellsData.d.ts","sourceRoot":"","sources":["../../src/bubble/getGroupedCellsData.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EAAE,KAAK,IAAI,EAAiB,KAAK,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAI3F,KAAK,gBAAgB,GAAG,WAAW,GAAC,YAAY,CAAC;AACjD,MAAM,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC;AAChD,MAAM,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;AAoCpE,wBAAgB,mBAAmB,CAC/B,IAAI,EAAE,SAAS,EACf,CAAC,EAAE,UAAU,EAAE,EACf,CAAC,EAAE,UAAU,EAAE,EACf,eAAe,EAAE,UAAU,EAC3B,gBAAgB,EAAE,UAAU,EAC5B,OAAO,EAAE,UAAU,EAAE,EACrB,QAAQ,EAAE,UAAU,EAAE,EACtB,QAAQ,EAAE,UAAU,EAAE,EACtB,OAAO,EAAE,UAAU,EAAE,EACrB,OAAO,EAAE,UAAU,EAAE,EACrB,aAAa,EAAE,kBAAkB,CAAC,eAAe,CAAC,EAClD,aAAa,EAAE,kBAAkB,CAAC,eAAe,CAAC,EAClD,SAAS,EAAE,kBAAkB,CAAC,WAAW,CAAC,EAC1C,SAAS,EAAE,kBAAkB,CAAC,WAAW,CAAC,EAC1C,SAAS,EAAE,kBAAkB,CAAC,WAAW,CAAC,EAC1C,KAAK,EAAE,kBAAkB,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,EACnD,KAAK,EAAE,kBAAkB,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,EACnD,WAAW,EAAE,kBAAkB,CAAC,aAAa,CAAC,EAC9C,aAAa,GAAE,OAAe,EAC9B,gBAAgB,GAAE,OAAe,GAClC,kBAAkB,CA4BpB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getGroupedCellsData.js","names":[],"sources":["../../src/bubble/getGroupedCellsData.ts"],"sourcesContent":["import type { DataFrame } from '../DataFrame';\nimport type { ColumnName } from '../types';\nimport type { BubbleSettingsImpl } from './BubbleSettingsImpl';\nimport { type Cell, fillCellsData, type GroupedCellsData } from '../heatmap/fillCellsData';\n\nconst MAX_RENDERED_CELLS_COUNT = 1000000;\n\ntype BubbleDataFields = 'sizeValue'|'colorValue';\nexport type CellBubble = Cell<BubbleDataFields>;\nexport type GroupedCellsBubble = GroupedCellsData<BubbleDataFields>;\n\nfunction createEmptyGroupedCells(): GroupedCellsBubble {\n return {\n meta: {\n valueSources: ['sizeValue', 'colorValue'],\n facetKeys: [],\n xGroupKeys: [],\n yGroupKeys: [],\n\n xKeys: [], // all the keys from facets\n yKeys: [], // all the keys from facets\n xKeysByGroups: {},\n yKeysByGroups: {},\n\n xLabels: {},\n yLabels: {},\n xGroupLabels: {},\n yGroupLabels: {},\n\n facetKeyValues: {},\n xGroupKeyValues: {},\n yGroupKeyValues: {},\n\n xDataByKeys: {},\n yDataByKeys: {},\n\n valueExtent: {\n sizeValue: [Infinity, -Infinity],\n colorValue: [Infinity, -Infinity]\n }\n },\n facets: {},\n };\n}\n\nexport function getGroupedCellsData(\n data: DataFrame,\n
|
|
1
|
+
{"version":3,"file":"getGroupedCellsData.js","names":[],"sources":["../../src/bubble/getGroupedCellsData.ts"],"sourcesContent":["import type { DataFrame } from '../DataFrame';\nimport type { ColumnName } from '../types';\nimport type { BubbleSettingsImpl } from './BubbleSettingsImpl';\nimport { type Cell, fillCellsData, type GroupedCellsData } from '../heatmap/fillCellsData';\n\nconst MAX_RENDERED_CELLS_COUNT = 1000000;\n\ntype BubbleDataFields = 'sizeValue'|'colorValue';\nexport type CellBubble = Cell<BubbleDataFields>;\nexport type GroupedCellsBubble = GroupedCellsData<BubbleDataFields>;\n\nfunction createEmptyGroupedCells(): GroupedCellsBubble {\n return {\n meta: {\n valueSources: ['sizeValue', 'colorValue'],\n facetKeys: [],\n xGroupKeys: [],\n yGroupKeys: [],\n\n xKeys: [], // all the keys from facets\n yKeys: [], // all the keys from facets\n xKeysByGroups: {},\n yKeysByGroups: {},\n\n xLabels: {},\n yLabels: {},\n xGroupLabels: {},\n yGroupLabels: {},\n\n facetKeyValues: {},\n xGroupKeyValues: {},\n yGroupKeyValues: {},\n\n xDataByKeys: {},\n yDataByKeys: {},\n\n valueExtent: {\n sizeValue: [Infinity, -Infinity],\n colorValue: [Infinity, -Infinity]\n }\n },\n facets: {},\n };\n}\n\nexport function getGroupedCellsData(\n data: DataFrame,\n x: ColumnName[],\n y: ColumnName[],\n valueColumnSize: ColumnName,\n valueColumnColor: ColumnName,\n facetBy: ColumnName[],\n xGroupBy: ColumnName[],\n yGroupBy: ColumnName[],\n xSortBy: ColumnName[],\n ySortBy: ColumnName[],\n facetSettings: BubbleSettingsImpl['facetSettings'],\n normalization: BubbleSettingsImpl['normalization'],\n NAValueAs: BubbleSettingsImpl['NAValueAs'],\n transform: BubbleSettingsImpl['transform'],\n keysOrder: BubbleSettingsImpl['keysOrder'],\n xAxis: BubbleSettingsImpl['chartSettings']['xAxis'],\n yAxis: BubbleSettingsImpl['chartSettings']['yAxis'],\n aggregation: BubbleSettingsImpl['aggregation'],\n showEmptyRows: boolean = false,\n showEmptyColumns: boolean = false,\n): GroupedCellsBubble {\n const result: GroupedCellsBubble = createEmptyGroupedCells();\n\n fillCellsData(result, {\n data,\n x, y,\n valueColumns: { sizeValue: valueColumnSize, colorValue: valueColumnColor },\n facetBy, xGroupBy, yGroupBy,\n xSortBy, ySortBy,\n facetSettings,\n annotations: [],\n dendrogramX: null,\n dendrogramY: null,\n normalizationBySource: { sizeValue: null, colorValue: normalization },\n NAValueAs,\n transformBySource: { sizeValue: null, colorValue: transform },\n keysOrder,\n xAxis,\n yAxis,\n aggregation,\n showEmptyRows,\n showEmptyColumns,\n });\n\n if (result.meta.xKeys.length * result.meta.yKeys.length > MAX_RENDERED_CELLS_COUNT) {\n throw Error(`Too many cells for graph rendering (${result.meta.xKeys.length * result.meta.yKeys.length})`);\n }\n return result;\n}\n"],"mappings":";AAKA,IAAM,IAA2B;AAMjC,SAAS,IAA8C;AACnD,QAAO;EACH,MAAM;GACF,cAAc,CAAC,aAAa,aAAa;GACzC,WAAW,EAAE;GACb,YAAY,EAAE;GACd,YAAY,EAAE;GAEd,OAAO,EAAE;GACT,OAAO,EAAE;GACT,eAAe,EAAE;GACjB,eAAe,EAAE;GAEjB,SAAS,EAAE;GACX,SAAS,EAAE;GACX,cAAc,EAAE;GAChB,cAAc,EAAE;GAEhB,gBAAgB,EAAE;GAClB,iBAAiB,EAAE;GACnB,iBAAiB,EAAE;GAEnB,aAAa,EAAE;GACf,aAAa,EAAE;GAEf,aAAa;IACT,WAAW,CAAC,UAAU,UAAU;IAChC,YAAY,CAAC,UAAU,UAAU;IACpC;GACJ;EACD,QAAQ,EAAE;EACb;;AAGL,SAAgB,EACZ,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,IAAyB,IACzB,IAA4B,IACV;CAClB,IAAM,IAA6B,GAAyB;AAuB5D,KArBA,EAAc,GAAQ;EAClB;EACA;EAAG;EACH,cAAc;GAAE,WAAW;GAAiB,YAAY;GAAkB;EAC1E;EAAS;EAAU;EACnB;EAAS;EACT;EACA,aAAa,EAAE;EACf,aAAa;EACb,aAAa;EACb,uBAAuB;GAAE,WAAW;GAAM,YAAY;GAAe;EACrE;EACA,mBAAmB;GAAE,WAAW;GAAM,YAAY;GAAW;EAC7D;EACA;EACA;EACA;EACA;EACA;EACH,CAAC,EAEE,EAAO,KAAK,MAAM,SAAS,EAAO,KAAK,MAAM,SAAS,EACtD,OAAM,MAAM,uCAAuC,EAAO,KAAK,MAAM,SAAS,EAAO,KAAK,MAAM,OAAO,GAAG;AAE9G,QAAO"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/bubble/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,KAAK,mBAAmB,EAAE,KAAK,cAAc,EAAoC,MAAM,UAAU,CAAC;AAC3G,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAwC,KAAK,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/bubble/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,KAAK,mBAAmB,EAAE,KAAK,cAAc,EAAoC,MAAM,UAAU,CAAC;AAC3G,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAwC,KAAK,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAKtG,qBAAa,WAAY,SAAQ,aAAa;IAC1C,QAAQ,EAAE,kBAAkB,CAAC;IAC7B,aAAa,EAAE,aAAa,CAAC;IAE7B,mBAAmB,EAAE,CAAC,CAAC,EAAC,OAAO,KAAK,IAAI,CAAmB;IAC3D,cAAc,EAAE;QACZ,gBAAgB,EAAE,kBAAkB,CAAC;KACxC,GAAG,IAAI,CAAQ;gBAEJ,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,cAAc,EAAE,aAAa,CAAC,EAAE,mBAAmB;IAU1F,KAAK,CAAC,IAAI,EAAE,WAAW;IAiBvB,OAAO;IAIP,qBAAqB,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,cAAc;IA2B/D,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO;IAIhD,MAAM,IAAI,MAAM;IAKhB,mCAAmC,CAAC,YAAY,EAAE,kBAAkB,EAAE,QAAQ,EAAE,kBAAkB;IA0BlG,+BAA+B,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS;IAUpE,WAAW;IA+BX,gBAAgB;IAOhB,YAAY;IAoBZ,OAAO,CAAC,WAAW,CAIjB;CACL"}
|
package/dist/bubble/index.js
CHANGED
|
@@ -2,18 +2,20 @@ import { AbstractChart as e } from "../AbstractChart.js";
|
|
|
2
2
|
import { getUnknownErrorInfo as t, isErrorInfo as n } from "../types/common.js";
|
|
3
3
|
import "../types/index.js";
|
|
4
4
|
import { arraysAreDifferent as r } from "../utils/arraysAreDifferent.js";
|
|
5
|
-
import {
|
|
6
|
-
import a from "
|
|
7
|
-
import {
|
|
8
|
-
import
|
|
9
|
-
import {
|
|
10
|
-
|
|
5
|
+
import { labelPartsChanged as i } from "../heatmap/labelParts.js";
|
|
6
|
+
import { compareColumnGroups as a } from "../utils/compareColumnGroups.js";
|
|
7
|
+
import { BubbleSettingsImpl as o } from "./BubbleSettingsImpl.js";
|
|
8
|
+
import s from "./ChartRenderer.js";
|
|
9
|
+
import { getCellTooltip as c } from "./getCellTooltip.js";
|
|
10
|
+
import { getGroupedCellsData as l } from "./getGroupedCellsData.js";
|
|
11
|
+
import { renderToString as u } from "react-dom/server.browser";
|
|
12
|
+
var d = class extends e {
|
|
11
13
|
settings;
|
|
12
14
|
chartRenderer;
|
|
13
15
|
onTooltipHintSwitch = () => void 0;
|
|
14
16
|
calculatedData = null;
|
|
15
17
|
constructor(e, t, n) {
|
|
16
|
-
super(e, t), this.settings = new
|
|
18
|
+
super(e, t), this.settings = new o(t), this.chartRenderer = new s(), n && (this.onTooltipHintSwitch = n[0]);
|
|
17
19
|
}
|
|
18
20
|
mount(e) {
|
|
19
21
|
try {
|
|
@@ -28,7 +30,7 @@ var l = class extends e {
|
|
|
28
30
|
updateSettingsAndData(e, r) {
|
|
29
31
|
try {
|
|
30
32
|
let t = this.settings, n = this.data;
|
|
31
|
-
this.settings = new
|
|
33
|
+
this.settings = new o(r), this.data = e, this._needUpdateCalculatedDataBySettings(t, this.settings) || this._needUpdateCalculatedDataByData(n, this.data) ? this._updateData() : this._updateAesInData(), this._updateChart(), this.hasError = !1, this.errorInfo = null;
|
|
32
34
|
} catch (e) {
|
|
33
35
|
this.hasError = !0, e instanceof Error && (this.errorInfo = n(e.cause) ? e.cause : t(e), this.chartRenderer.renderError(e.message), console.error(e));
|
|
34
36
|
}
|
|
@@ -37,19 +39,18 @@ var l = class extends e {
|
|
|
37
39
|
console.warn("no chart state for bubble chart");
|
|
38
40
|
}
|
|
39
41
|
export() {
|
|
40
|
-
return this._updateChart(),
|
|
42
|
+
return this._updateChart(), u(this.chartRenderer.component);
|
|
41
43
|
}
|
|
42
44
|
_needUpdateCalculatedDataBySettings(e, t) {
|
|
43
|
-
|
|
44
|
-
return e.facetBy.some((e, n) => e.value !== t.facetBy[n]?.value) || r(e.facetSettings?.order ?? [], t.facetSettings?.order ?? []) || e.normalization?.method !== t.normalization?.method || e.normalization?.direction !== t.normalization?.direction || e.xColumn.value !== t.xColumn.value || e.yColumn.value !== t.yColumn.value || e.valueColumnColor.value !== t.valueColumnColor.value || e.valueColumnSize.value !== t.valueColumnSize.value || n(e.xSortBy, t.xSortBy) || n(e.ySortBy, t.ySortBy) || e.chartSettings.xAxis.sorting !== t.chartSettings.xAxis.sorting || e.chartSettings.yAxis.sorting !== t.chartSettings.yAxis.sorting || e.NAValueAs !== t.NAValueAs || e.transform !== t.transform || e.aggregation?.method !== t.aggregation?.method || e.aggregation?.x !== t.aggregation?.x || e.aggregation?.y !== t.aggregation?.y || e.showEmptyRows !== t.showEmptyRows || e.showEmptyColumns !== t.showEmptyColumns;
|
|
45
|
+
return e.facetBy.some((e, n) => e.value !== t.facetBy[n]?.value) || r(e.facetSettings?.order ?? [], t.facetSettings?.order ?? []) || e.normalization?.method !== t.normalization?.method || e.normalization?.direction !== t.normalization?.direction || a(e.x, t.x) || a(e.y, t.y) || a(e.xGroupBy, t.xGroupBy) || a(e.yGroupBy, t.yGroupBy) || e.valueColumnColor.value !== t.valueColumnColor.value || e.valueColumnSize.value !== t.valueColumnSize.value || a(e.xSortBy, t.xSortBy) || a(e.ySortBy, t.ySortBy) || e.chartSettings.xAxis.sorting !== t.chartSettings.xAxis.sorting || e.chartSettings.yAxis.sorting !== t.chartSettings.yAxis.sorting || e.NAValueAs !== t.NAValueAs || e.transform !== t.transform || e.aggregation?.method !== t.aggregation?.method || e.aggregation?.x !== t.aggregation?.x || e.aggregation?.y !== t.aggregation?.y || e.showEmptyRows !== t.showEmptyRows || e.showEmptyColumns !== t.showEmptyColumns || i(e.chartSettings.xAxis.labelParts, t.chartSettings.xAxis.labelParts) || i(e.chartSettings.yAxis.labelParts, t.chartSettings.yAxis.labelParts);
|
|
45
46
|
}
|
|
46
47
|
_needUpdateCalculatedDataByData(e, t) {
|
|
47
48
|
let n = Object.keys(e.data), r = Object.keys(t.data);
|
|
48
49
|
return e.id !== t.id || n.length !== r.length || n.some((n) => e.data[n].length !== t.data[n]?.length);
|
|
49
50
|
}
|
|
50
51
|
_updateData() {
|
|
51
|
-
let { facetBy: e, facetSettings: t, xGroupBy: n, yGroupBy: r, xSortBy: i, ySortBy: a,
|
|
52
|
-
this.calculatedData = { groupedCellsData:
|
|
52
|
+
let { facetBy: e, facetSettings: t, xGroupBy: n, yGroupBy: r, xSortBy: i, ySortBy: a, x: o, y: s, valueColumnSize: c, valueColumnColor: u, normalization: d, NAValueAs: f, transform: p, aggregation: m, chartSettings: h, keysOrder: g, showEmptyRows: _, showEmptyColumns: v } = this.settings;
|
|
53
|
+
this.calculatedData = { groupedCellsData: l(this.data, o, s, c, u, e, n, r, i, a, t, d, f, p, g, h.xAxis, h.yAxis, m, _, v) };
|
|
53
54
|
}
|
|
54
55
|
_updateAesInData() {
|
|
55
56
|
this.calculatedData;
|
|
@@ -59,8 +60,8 @@ var l = class extends e {
|
|
|
59
60
|
let { id: e, chartSettings: t, facetSettings: n, valueColumnColor: r, valueColumnSize: i, normalization: a, aes: o } = this.settings;
|
|
60
61
|
this.chartRenderer.render(this.data, e, t, n, this.calculatedData.groupedCellsData, r, i, a, o, this._getTooltip, this.onTooltipHintSwitch);
|
|
61
62
|
}
|
|
62
|
-
_getTooltip = (e) => this.calculatedData ?
|
|
63
|
+
_getTooltip = (e) => this.calculatedData ? c(this.data, e, this.calculatedData.groupedCellsData.meta, this.settings?.chartSettings?.tooltips?.content) : ["No data available"];
|
|
63
64
|
};
|
|
64
|
-
export {
|
|
65
|
+
export { d as ChartBubble };
|
|
65
66
|
|
|
66
67
|
//# sourceMappingURL=index.js.map
|
package/dist/bubble/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../src/bubble/index.ts"],"sourcesContent":["import { renderToString } from 'react-dom/server.browser';\nimport { AbstractChart } from '../AbstractChart';\nimport type { DataFrame } from '../DataFrame';\nimport { type BubbleEventHandlers, type BubbleSettings, getUnknownErrorInfo, isErrorInfo } from '../types';\nimport { BubbleSettingsImpl } from './BubbleSettingsImpl';\nimport ChartRenderer from './ChartRenderer';\nimport { getCellTooltip } from './getCellTooltip';\nimport { type CellBubble, getGroupedCellsData, type GroupedCellsBubble } from './getGroupedCellsData';\nimport { arraysAreDifferent } from '../utils/arraysAreDifferent';\n\nexport class ChartBubble extends AbstractChart {\n settings: BubbleSettingsImpl;\n chartRenderer: ChartRenderer;\n\n onTooltipHintSwitch: (v:boolean) => void = () => undefined;\n calculatedData: {\n groupedCellsData: GroupedCellsBubble;\n } | null = null;\n\n constructor(data: DataFrame, settings: BubbleSettings, eventHandlers?: BubbleEventHandlers) {\n super(data, settings);\n\n this.settings = new BubbleSettingsImpl(settings);\n this.chartRenderer = new ChartRenderer();\n if (eventHandlers) {\n this.onTooltipHintSwitch = eventHandlers[0];\n }\n }\n\n mount(node: HTMLElement) {\n try {\n this.chartRenderer.init(node);\n this._updateData();\n this._updateChart();\n this.hasError = false;\n this.errorInfo = null;\n } catch (err) {\n this.hasError = true;\n if (err instanceof Error) {\n this.errorInfo = isErrorInfo(err.cause) ? err.cause : getUnknownErrorInfo(err);\n this.chartRenderer.renderError(err.message as string);\n console.error(err);\n }\n }\n }\n\n unmount() {\n this.chartRenderer.clear();\n }\n\n updateSettingsAndData(data: DataFrame, settings: BubbleSettings) {\n try {\n const previousSettings = this.settings;\n const previousData = this.data;\n this.settings = new BubbleSettingsImpl(settings);\n this.data = data;\n if (\n this._needUpdateCalculatedDataBySettings(previousSettings, this.settings) ||\n this._needUpdateCalculatedDataByData(previousData, this.data)\n ) {\n this._updateData();\n } else {\n this._updateAesInData();\n }\n this._updateChart();\n this.hasError = false;\n this.errorInfo = null;\n } catch (err) {\n this.hasError = true;\n if (err instanceof Error) {\n this.errorInfo = isErrorInfo(err.cause) ? err.cause : getUnknownErrorInfo(err);\n this.chartRenderer.renderError(err.message as string);\n console.error(err);\n }\n }\n }\n\n updateChartState(_field: string, _value: unknown) {\n console.warn('no chart state for bubble chart');\n }\n\n export(): string {\n this._updateChart();\n return renderToString(this.chartRenderer.component);\n }\n\n _needUpdateCalculatedDataBySettings(prevSettings: BubbleSettingsImpl, settings: BubbleSettingsImpl) {\n const compareColumnGroups = (a: typeof prevSettings.xSortBy, b: typeof settings.xSortBy) =>\n a.length !== b.length || a.some((col, idx) => col.value !== b[idx].value);\n return prevSettings.facetBy.some((el, idx) => el.value !== settings.facetBy[idx]?.value) ||\n arraysAreDifferent(prevSettings.facetSettings?.order ?? [], settings.facetSettings?.order ?? []) ||\n prevSettings.normalization?.method !== settings.normalization?.method ||\n prevSettings.normalization?.direction !== settings.normalization?.direction ||\n prevSettings.xColumn.value !== settings.xColumn.value ||\n prevSettings.yColumn.value !== settings.yColumn.value ||\n prevSettings.valueColumnColor.value !== settings.valueColumnColor.value ||\n prevSettings.valueColumnSize.value !== settings.valueColumnSize.value ||\n compareColumnGroups(prevSettings.xSortBy, settings.xSortBy) ||\n compareColumnGroups(prevSettings.ySortBy, settings.ySortBy) ||\n prevSettings.chartSettings.xAxis.sorting !== settings.chartSettings.xAxis.sorting ||\n prevSettings.chartSettings.yAxis.sorting !== settings.chartSettings.yAxis.sorting ||\n prevSettings.NAValueAs !== settings.NAValueAs ||\n prevSettings.transform !== settings.transform ||\n prevSettings.aggregation?.method !== settings.aggregation?.method ||\n prevSettings.aggregation?.x !== settings.aggregation?.x ||\n prevSettings.aggregation?.y !== settings.aggregation?.y ||\n prevSettings.showEmptyRows !== settings.showEmptyRows ||\n prevSettings.showEmptyColumns !== settings.showEmptyColumns;\n }\n\n _needUpdateCalculatedDataByData(prevData: DataFrame, data: DataFrame) {\n const prevKeys = Object.keys(prevData.data);\n const keys = Object.keys(data.data);\n return (\n prevData.id !== data.id ||\n prevKeys.length !== keys.length ||\n prevKeys.some(key => prevData.data[key].length !== data.data[key]?.length)\n );\n }\n\n _updateData() {\n const {facetBy, facetSettings, xGroupBy, yGroupBy, xSortBy, ySortBy, xColumn, yColumn, valueColumnSize, valueColumnColor, normalization, NAValueAs, transform, aggregation, chartSettings, keysOrder, showEmptyRows, showEmptyColumns} = this.settings;\n\n const groupedCellsData = getGroupedCellsData(\n this.data,\n xColumn,\n yColumn,\n valueColumnSize,\n valueColumnColor,\n facetBy,\n xGroupBy,\n yGroupBy,\n xSortBy,\n ySortBy,\n facetSettings,\n normalization,\n NAValueAs,\n transform,\n keysOrder,\n chartSettings.xAxis,\n chartSettings.yAxis,\n aggregation,\n showEmptyRows,\n showEmptyColumns,\n );\n\n this.calculatedData = {\n groupedCellsData,\n };\n }\n\n _updateAesInData() {\n const calculated = this.calculatedData;\n if (!calculated) {\n return;\n }\n }\n\n _updateChart() {\n if (!this.calculatedData) {\n return;\n }\n const {id, chartSettings, facetSettings, valueColumnColor, valueColumnSize, normalization, aes} = this.settings;\n this.chartRenderer.render(\n this.data,\n id,\n chartSettings,\n facetSettings,\n this.calculatedData.groupedCellsData,\n valueColumnColor,\n valueColumnSize,\n normalization,\n aes,\n this._getTooltip,\n this.onTooltipHintSwitch,\n );\n }\n\n private _getTooltip = (cell: CellBubble): string[] => {\n return this.calculatedData\n ? getCellTooltip(this.data, cell, this.calculatedData.groupedCellsData.meta, this.settings?.chartSettings?.tooltips?.content)\n : ['No data available'];\n };\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../src/bubble/index.ts"],"sourcesContent":["import { renderToString } from 'react-dom/server.browser';\nimport { AbstractChart } from '../AbstractChart';\nimport type { DataFrame } from '../DataFrame';\nimport { type BubbleEventHandlers, type BubbleSettings, getUnknownErrorInfo, isErrorInfo } from '../types';\nimport { BubbleSettingsImpl } from './BubbleSettingsImpl';\nimport ChartRenderer from './ChartRenderer';\nimport { getCellTooltip } from './getCellTooltip';\nimport { type CellBubble, getGroupedCellsData, type GroupedCellsBubble } from './getGroupedCellsData';\nimport { arraysAreDifferent } from '../utils/arraysAreDifferent';\nimport { compareColumnGroups } from '../utils/compareColumnGroups';\nimport { labelPartsChanged } from '../heatmap/labelParts';\n\nexport class ChartBubble extends AbstractChart {\n settings: BubbleSettingsImpl;\n chartRenderer: ChartRenderer;\n\n onTooltipHintSwitch: (v:boolean) => void = () => undefined;\n calculatedData: {\n groupedCellsData: GroupedCellsBubble;\n } | null = null;\n\n constructor(data: DataFrame, settings: BubbleSettings, eventHandlers?: BubbleEventHandlers) {\n super(data, settings);\n\n this.settings = new BubbleSettingsImpl(settings);\n this.chartRenderer = new ChartRenderer();\n if (eventHandlers) {\n this.onTooltipHintSwitch = eventHandlers[0];\n }\n }\n\n mount(node: HTMLElement) {\n try {\n this.chartRenderer.init(node);\n this._updateData();\n this._updateChart();\n this.hasError = false;\n this.errorInfo = null;\n } catch (err) {\n this.hasError = true;\n if (err instanceof Error) {\n this.errorInfo = isErrorInfo(err.cause) ? err.cause : getUnknownErrorInfo(err);\n this.chartRenderer.renderError(err.message as string);\n console.error(err);\n }\n }\n }\n\n unmount() {\n this.chartRenderer.clear();\n }\n\n updateSettingsAndData(data: DataFrame, settings: BubbleSettings) {\n try {\n const previousSettings = this.settings;\n const previousData = this.data;\n this.settings = new BubbleSettingsImpl(settings);\n this.data = data;\n if (\n this._needUpdateCalculatedDataBySettings(previousSettings, this.settings) ||\n this._needUpdateCalculatedDataByData(previousData, this.data)\n ) {\n this._updateData();\n } else {\n this._updateAesInData();\n }\n this._updateChart();\n this.hasError = false;\n this.errorInfo = null;\n } catch (err) {\n this.hasError = true;\n if (err instanceof Error) {\n this.errorInfo = isErrorInfo(err.cause) ? err.cause : getUnknownErrorInfo(err);\n this.chartRenderer.renderError(err.message as string);\n console.error(err);\n }\n }\n }\n\n updateChartState(_field: string, _value: unknown) {\n console.warn('no chart state for bubble chart');\n }\n\n export(): string {\n this._updateChart();\n return renderToString(this.chartRenderer.component);\n }\n\n _needUpdateCalculatedDataBySettings(prevSettings: BubbleSettingsImpl, settings: BubbleSettingsImpl) {\n return prevSettings.facetBy.some((el, idx) => el.value !== settings.facetBy[idx]?.value) ||\n arraysAreDifferent(prevSettings.facetSettings?.order ?? [], settings.facetSettings?.order ?? []) ||\n prevSettings.normalization?.method !== settings.normalization?.method ||\n prevSettings.normalization?.direction !== settings.normalization?.direction ||\n compareColumnGroups(prevSettings.x, settings.x) ||\n compareColumnGroups(prevSettings.y, settings.y) ||\n compareColumnGroups(prevSettings.xGroupBy, settings.xGroupBy) ||\n compareColumnGroups(prevSettings.yGroupBy, settings.yGroupBy) ||\n prevSettings.valueColumnColor.value !== settings.valueColumnColor.value ||\n prevSettings.valueColumnSize.value !== settings.valueColumnSize.value ||\n compareColumnGroups(prevSettings.xSortBy, settings.xSortBy) ||\n compareColumnGroups(prevSettings.ySortBy, settings.ySortBy) ||\n prevSettings.chartSettings.xAxis.sorting !== settings.chartSettings.xAxis.sorting ||\n prevSettings.chartSettings.yAxis.sorting !== settings.chartSettings.yAxis.sorting ||\n prevSettings.NAValueAs !== settings.NAValueAs ||\n prevSettings.transform !== settings.transform ||\n prevSettings.aggregation?.method !== settings.aggregation?.method ||\n prevSettings.aggregation?.x !== settings.aggregation?.x ||\n prevSettings.aggregation?.y !== settings.aggregation?.y ||\n prevSettings.showEmptyRows !== settings.showEmptyRows ||\n prevSettings.showEmptyColumns !== settings.showEmptyColumns ||\n labelPartsChanged(prevSettings.chartSettings.xAxis.labelParts, settings.chartSettings.xAxis.labelParts) ||\n labelPartsChanged(prevSettings.chartSettings.yAxis.labelParts, settings.chartSettings.yAxis.labelParts);\n }\n\n _needUpdateCalculatedDataByData(prevData: DataFrame, data: DataFrame) {\n const prevKeys = Object.keys(prevData.data);\n const keys = Object.keys(data.data);\n return (\n prevData.id !== data.id ||\n prevKeys.length !== keys.length ||\n prevKeys.some(key => prevData.data[key].length !== data.data[key]?.length)\n );\n }\n\n _updateData() {\n const {facetBy, facetSettings, xGroupBy, yGroupBy, xSortBy, ySortBy, x, y, valueColumnSize, valueColumnColor, normalization, NAValueAs, transform, aggregation, chartSettings, keysOrder, showEmptyRows, showEmptyColumns} = this.settings;\n\n const groupedCellsData = getGroupedCellsData(\n this.data,\n x,\n y,\n valueColumnSize,\n valueColumnColor,\n facetBy,\n xGroupBy,\n yGroupBy,\n xSortBy,\n ySortBy,\n facetSettings,\n normalization,\n NAValueAs,\n transform,\n keysOrder,\n chartSettings.xAxis,\n chartSettings.yAxis,\n aggregation,\n showEmptyRows,\n showEmptyColumns,\n );\n\n this.calculatedData = {\n groupedCellsData,\n };\n }\n\n _updateAesInData() {\n const calculated = this.calculatedData;\n if (!calculated) {\n return;\n }\n }\n\n _updateChart() {\n if (!this.calculatedData) {\n return;\n }\n const {id, chartSettings, facetSettings, valueColumnColor, valueColumnSize, normalization, aes} = this.settings;\n this.chartRenderer.render(\n this.data,\n id,\n chartSettings,\n facetSettings,\n this.calculatedData.groupedCellsData,\n valueColumnColor,\n valueColumnSize,\n normalization,\n aes,\n this._getTooltip,\n this.onTooltipHintSwitch,\n );\n }\n\n private _getTooltip = (cell: CellBubble): string[] => {\n return this.calculatedData\n ? getCellTooltip(this.data, cell, this.calculatedData.groupedCellsData.meta, this.settings?.chartSettings?.tooltips?.content)\n : ['No data available'];\n };\n}\n"],"mappings":"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"}
|
|
@@ -49,10 +49,10 @@ export declare class HeatmapSettingsImpl implements SettingsInterface {
|
|
|
49
49
|
nRows?: number;
|
|
50
50
|
nCols?: number;
|
|
51
51
|
};
|
|
52
|
-
readonly
|
|
52
|
+
readonly x: ColumnName[];
|
|
53
53
|
readonly xGroupBy: ColumnName[];
|
|
54
54
|
readonly xSortBy: ColumnName[];
|
|
55
|
-
readonly
|
|
55
|
+
readonly y: ColumnName[];
|
|
56
56
|
readonly yGroupBy: ColumnName[];
|
|
57
57
|
readonly ySortBy: ColumnName[];
|
|
58
58
|
readonly valueColumn: ColumnName;
|
|
@@ -91,6 +91,7 @@ export declare class HeatmapSettingsImpl implements SettingsInterface {
|
|
|
91
91
|
axisLabelsAngle: 0 | 45 | 90;
|
|
92
92
|
groupLabelsAngle: 0 | 45 | 90;
|
|
93
93
|
sorting: 'asc' | 'desc';
|
|
94
|
+
labelParts: ColumnName['value'][] | null;
|
|
94
95
|
};
|
|
95
96
|
readonly xAxis: {
|
|
96
97
|
title: string;
|
|
@@ -103,6 +104,7 @@ export declare class HeatmapSettingsImpl implements SettingsInterface {
|
|
|
103
104
|
axisLabelsAngle: 0 | 45 | 90;
|
|
104
105
|
groupLabelsAngle: 0 | 45 | 90;
|
|
105
106
|
sorting: 'asc' | 'desc';
|
|
107
|
+
labelParts: ColumnName['value'][] | null;
|
|
106
108
|
};
|
|
107
109
|
readonly legend: {
|
|
108
110
|
show: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HeatmapSettingsImpl.d.ts","sourceRoot":"","sources":["../../src/heatmap/HeatmapSettingsImpl.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACR,SAAS,EACT,iBAAiB,EACjB,UAAU,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,eAAe,EAClE,cAAc,EAAE,SAAS,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,UAAU,EAClF,iBAAiB,EACjB,aAAa,EAChB,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"HeatmapSettingsImpl.d.ts","sourceRoot":"","sources":["../../src/heatmap/HeatmapSettingsImpl.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
import { BLACK as e } from "../constants.js";
|
|
2
2
|
import { HeatmapSettingsSchema as t } from "../types/heatmap.js";
|
|
3
3
|
import "../types/index.js";
|
|
4
|
-
import n from "
|
|
5
|
-
|
|
4
|
+
import { joinAxisTitle as n, resolveLabelParts as r } from "./labelParts.js";
|
|
5
|
+
import i from "lodash";
|
|
6
|
+
var a = {
|
|
6
7
|
lineColor: e,
|
|
7
8
|
dotShape: "21",
|
|
8
9
|
dotFill: e,
|
|
9
10
|
dotSize: 3,
|
|
10
11
|
lineShape: "solid",
|
|
11
12
|
lineWidth: 1
|
|
12
|
-
},
|
|
13
|
+
}, o = {
|
|
13
14
|
size: 150,
|
|
14
15
|
distance: "euclidean",
|
|
15
16
|
linkage: "average",
|
|
@@ -17,15 +18,15 @@ var r = {
|
|
|
17
18
|
showNodes: !0,
|
|
18
19
|
hidden: !1,
|
|
19
20
|
edgeInheritance: "up",
|
|
20
|
-
aes:
|
|
21
|
-
},
|
|
21
|
+
aes: a
|
|
22
|
+
}, s = class {
|
|
22
23
|
id;
|
|
23
24
|
type = "heatmap";
|
|
24
25
|
facetSettings;
|
|
25
|
-
|
|
26
|
+
x;
|
|
26
27
|
xGroupBy;
|
|
27
28
|
xSortBy;
|
|
28
|
-
|
|
29
|
+
y;
|
|
29
30
|
yGroupBy;
|
|
30
31
|
ySortBy;
|
|
31
32
|
valueColumn;
|
|
@@ -45,7 +46,7 @@ var r = {
|
|
|
45
46
|
showEmptyColumns;
|
|
46
47
|
cellsRenderingMode;
|
|
47
48
|
constructor(e) {
|
|
48
|
-
if (t.parse(e), this.id =
|
|
49
|
+
if (t.parse(e), this.id = i.uniqueId("settings"), this.x = e.x, this.xGroupBy = e.xGroupBy ?? [], this.xSortBy = e.xSortBy ?? [], this.y = e.y, this.yGroupBy = e.yGroupBy ?? [], this.ySortBy = e.ySortBy ?? [], this.valueColumn = e.valueColumn, this.facetBy = e.facetBy ?? [], this.chartSettings = {
|
|
49
50
|
title: {
|
|
50
51
|
position: "left",
|
|
51
52
|
show: !0,
|
|
@@ -63,7 +64,7 @@ var r = {
|
|
|
63
64
|
frame: { type: e.frame?.type ?? "none" },
|
|
64
65
|
valueType: e.valueType ?? "continuous",
|
|
65
66
|
yAxis: {
|
|
66
|
-
title: e.
|
|
67
|
+
title: n(r(e.y, e.yAxis?.labelParts)),
|
|
67
68
|
showTicks: !0,
|
|
68
69
|
showTitle: !0,
|
|
69
70
|
showAxisLabels: !0,
|
|
@@ -73,10 +74,11 @@ var r = {
|
|
|
73
74
|
axisLabelsAngle: 90,
|
|
74
75
|
groupLabelsAngle: 0,
|
|
75
76
|
sorting: "asc",
|
|
77
|
+
labelParts: null,
|
|
76
78
|
...e.yAxis
|
|
77
79
|
},
|
|
78
80
|
xAxis: {
|
|
79
|
-
title: e.
|
|
81
|
+
title: n(r(e.x, e.xAxis?.labelParts)),
|
|
80
82
|
showTicks: !0,
|
|
81
83
|
showTitle: !0,
|
|
82
84
|
showAxisLabels: !0,
|
|
@@ -86,6 +88,7 @@ var r = {
|
|
|
86
88
|
axisLabelsAngle: 90,
|
|
87
89
|
groupLabelsAngle: 0,
|
|
88
90
|
sorting: "asc",
|
|
91
|
+
labelParts: null,
|
|
89
92
|
...e.xAxis
|
|
90
93
|
},
|
|
91
94
|
legend: {
|
|
@@ -115,7 +118,7 @@ var r = {
|
|
|
115
118
|
groupGap: e.aes?.groupGap ?? 3,
|
|
116
119
|
emptyCellColor: e.aes?.emptyCellColor ?? "white"
|
|
117
120
|
}, this.annotations = (e.annotations ?? []).map((e) => e.axis === "x" ? {
|
|
118
|
-
id:
|
|
121
|
+
id: i.uniqueId("annotation"),
|
|
119
122
|
axis: "x",
|
|
120
123
|
valueColumn: e.valueColumn,
|
|
121
124
|
position: e.position ?? this.chartSettings.xAxis.position,
|
|
@@ -124,7 +127,7 @@ var r = {
|
|
|
124
127
|
type: e.type,
|
|
125
128
|
colors: e.colors ?? ["white", "black"]
|
|
126
129
|
} : {
|
|
127
|
-
id:
|
|
130
|
+
id: i.uniqueId("annotation"),
|
|
128
131
|
axis: "y",
|
|
129
132
|
valueColumn: e.valueColumn,
|
|
130
133
|
position: e.position ?? this.chartSettings.yAxis.position,
|
|
@@ -139,24 +142,24 @@ var r = {
|
|
|
139
142
|
method: "min",
|
|
140
143
|
...e.aggregation
|
|
141
144
|
}, this.dendrogramX = e.dendrogramX ? {
|
|
142
|
-
...
|
|
145
|
+
...o,
|
|
143
146
|
position: "top",
|
|
144
147
|
...e.dendrogramX,
|
|
145
148
|
aes: {
|
|
146
|
-
...
|
|
149
|
+
...a,
|
|
147
150
|
...e.dendrogramX?.aes
|
|
148
151
|
}
|
|
149
152
|
} : null, this.dendrogramY = e.dendrogramY ? {
|
|
150
|
-
...
|
|
153
|
+
...o,
|
|
151
154
|
position: "left",
|
|
152
155
|
...e.dendrogramY,
|
|
153
156
|
aes: {
|
|
154
|
-
...
|
|
157
|
+
...a,
|
|
155
158
|
...e.dendrogramY?.aes
|
|
156
159
|
}
|
|
157
160
|
} : null, this.inheritedDendrogramAes = e.inheritedDendrogramAes ?? null, this.cellsRenderingMode = e.cellsRenderingMode ?? null;
|
|
158
161
|
}
|
|
159
162
|
};
|
|
160
|
-
export {
|
|
163
|
+
export { s as HeatmapSettingsImpl };
|
|
161
164
|
|
|
162
165
|
//# sourceMappingURL=HeatmapSettingsImpl.js.map
|