@deephaven/chart 0.20.1-beta.5 → 0.21.1-beta.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/ChartUtils.d.ts +53 -3
- package/dist/ChartUtils.d.ts.map +1 -1
- package/dist/ChartUtils.js +142 -47
- package/dist/ChartUtils.js.map +1 -1
- package/dist/FigureChartModel.d.ts +6 -1
- package/dist/FigureChartModel.d.ts.map +1 -1
- package/dist/FigureChartModel.js +24 -17
- package/dist/FigureChartModel.js.map +1 -1
- package/package.json +9 -9
package/dist/ChartUtils.d.ts
CHANGED
|
@@ -20,6 +20,9 @@ export interface SeriesData {
|
|
|
20
20
|
xLow?: number;
|
|
21
21
|
xHigh?: number;
|
|
22
22
|
}
|
|
23
|
+
export declare type RangeParser = (range: Range) => unknown[];
|
|
24
|
+
export declare type AxisRangeParser = (axis: Axis) => RangeParser;
|
|
25
|
+
export declare type ChartAxisRangeParser = (chart: Chart) => AxisRangeParser;
|
|
23
26
|
declare type LayoutAxisKey = 'xaxis' | 'xaxis2' | 'xaxis3' | 'xaxis4' | 'xaxis5' | 'xaxis6' | 'xaxis7' | 'xaxis8' | 'xaxis9' | 'yaxis' | 'yaxis2' | 'yaxis3' | 'yaxis4' | 'yaxis5' | 'yaxis6' | 'yaxis7' | 'yaxis8' | 'yaxis9';
|
|
24
27
|
export interface TreeMapData extends PlotData {
|
|
25
28
|
tiling: {
|
|
@@ -35,6 +38,12 @@ interface Rangebreaks {
|
|
|
35
38
|
pattern?: 'day of week' | 'hour' | '';
|
|
36
39
|
values?: string[];
|
|
37
40
|
}
|
|
41
|
+
export declare type ChartBounds = {
|
|
42
|
+
left: number;
|
|
43
|
+
right: number;
|
|
44
|
+
top: number;
|
|
45
|
+
bottom: number;
|
|
46
|
+
};
|
|
38
47
|
export declare type AxisTypeMap = Map<AxisType, Axis[]>;
|
|
39
48
|
declare type AxisPositionMap = Map<AxisPosition, Axis[]>;
|
|
40
49
|
declare class ChartUtils {
|
|
@@ -177,6 +186,11 @@ declare class ChartUtils {
|
|
|
177
186
|
* @param axisPosition The Iris AxisPosition of the axis
|
|
178
187
|
*/
|
|
179
188
|
static getAxisSide(axisPosition: AxisPosition): LayoutAxis['side'] | undefined;
|
|
189
|
+
/**
|
|
190
|
+
* Get all axes for a given `Figure`. Iterates through all charts axes and concatenates them.
|
|
191
|
+
* @param figure Figure to get all axes for
|
|
192
|
+
*/
|
|
193
|
+
static getAllAxes(figure: Figure): Axis[];
|
|
180
194
|
/**
|
|
181
195
|
* Retrieve the chart that contains the passed in series from the figure
|
|
182
196
|
* @param figure The figure to retrieve the chart from
|
|
@@ -189,18 +203,48 @@ declare class ChartUtils {
|
|
|
189
203
|
* @returns An object mapping the axis name to it's range
|
|
190
204
|
*/
|
|
191
205
|
static getLayoutRanges(layout: Layout): Record<string, Range[]>;
|
|
206
|
+
/**
|
|
207
|
+
* Update the layout with all the axes information for the provided figure
|
|
208
|
+
* @param figure Figure to update the axes for
|
|
209
|
+
* @param layoutParam Layout object to update in place
|
|
210
|
+
* @param chartAxisRangeParser Function to retrieve the axis range parser
|
|
211
|
+
* @param plotWidth Width of the plot in pixels
|
|
212
|
+
* @param plotHeight Height of the plot in pixels
|
|
213
|
+
* @param theme Theme used for displaying the plot
|
|
214
|
+
*/
|
|
215
|
+
static updateFigureAxes(layoutParam: Partial<Layout>, figure: Figure, chartAxisRangeParser?: ChartAxisRangeParser, plotWidth?: number, plotHeight?: number, theme?: Readonly<{
|
|
216
|
+
paper_bgcolor: string;
|
|
217
|
+
plot_bgcolor: string;
|
|
218
|
+
title_color: string;
|
|
219
|
+
colorway: string;
|
|
220
|
+
gridcolor: string;
|
|
221
|
+
linecolor: string;
|
|
222
|
+
zerolinecolor: string;
|
|
223
|
+
activecolor: string;
|
|
224
|
+
rangebgcolor: string;
|
|
225
|
+
area_color: string;
|
|
226
|
+
trend_color: string;
|
|
227
|
+
line_color: string;
|
|
228
|
+
error_band_line_color: string;
|
|
229
|
+
error_band_fill_color: string;
|
|
230
|
+
ohlc_increasing: string;
|
|
231
|
+
ohlc_decreasing: string;
|
|
232
|
+
}>): void;
|
|
233
|
+
static getChartBounds(figure: Figure, chart: Chart, plotWidth?: number, plotHeight?: number): ChartBounds;
|
|
192
234
|
/**
|
|
193
235
|
* Updates the axes positions and sizes in the layout object provided.
|
|
194
236
|
* If the axis did not exist in the layout previously, it is created and added.
|
|
195
237
|
* Any axis that no longer exists in axes is removed.
|
|
196
238
|
* With Downsampling enabled, will also update the range on the axis itself as appropriate
|
|
197
239
|
* @param layoutParam The layout object to update
|
|
198
|
-
* @param
|
|
240
|
+
* @param chartAxes The chart axes to update the layout with
|
|
241
|
+
* @param figureAxes All figure axes to update the layout with
|
|
199
242
|
* @param plotWidth The width of the plot to calculate the axis sizes for
|
|
200
243
|
* @param plotHeight The height of the plot to calculate the axis sizes for
|
|
201
|
-
* @param
|
|
244
|
+
* @param bounds The bounds for this set of axes
|
|
245
|
+
* @param axisRangeParser A function to retrieve the range parser for a given axis
|
|
202
246
|
*/
|
|
203
|
-
static updateLayoutAxes(layoutParam: Partial<Layout>,
|
|
247
|
+
static updateLayoutAxes(layoutParam: Partial<Layout>, chartAxes: Axis[], figureAxes: Axis[], plotWidth?: number, plotHeight?: number, bounds?: ChartBounds, axisRangeParser?: AxisRangeParser, theme?: Readonly<{
|
|
204
248
|
paper_bgcolor: string;
|
|
205
249
|
plot_bgcolor: string;
|
|
206
250
|
title_color: string;
|
|
@@ -218,6 +262,12 @@ declare class ChartUtils {
|
|
|
218
262
|
ohlc_increasing: string;
|
|
219
263
|
ohlc_decreasing: string;
|
|
220
264
|
}>): void;
|
|
265
|
+
/**
|
|
266
|
+
* Remove any axes from the layout param that no longer belong to any series
|
|
267
|
+
* @param layoutParam Layout object to remove stale axes from
|
|
268
|
+
* @param axes All axes in the figure
|
|
269
|
+
*/
|
|
270
|
+
static removeStaleAxes(layoutParam: Partial<Layout>, axes: Axis[]): void;
|
|
221
271
|
static getAxisLayoutProperty(axisProperty: 'x' | 'y', axisIndex: number): LayoutAxisKey;
|
|
222
272
|
/**
|
|
223
273
|
* Updates the layout axis object in place
|
package/dist/ChartUtils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChartUtils.d.ts","sourceRoot":"","sources":["../src/ChartUtils.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ChartUtils.d.ts","sourceRoot":"","sources":["../src/ChartUtils.ts"],"names":[],"mappings":"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"}
|
package/dist/ChartUtils.js
CHANGED
|
@@ -601,16 +601,17 @@ class ChartUtils {
|
|
|
601
601
|
tickformat: null,
|
|
602
602
|
ticksuffix: null
|
|
603
603
|
};
|
|
604
|
+
var allAxes = ChartUtils.getAllAxes(figure);
|
|
605
|
+
var axisTypeMap = ChartUtils.groupArray(allAxes, 'type');
|
|
604
606
|
var {
|
|
605
607
|
charts
|
|
606
608
|
} = figure;
|
|
607
609
|
|
|
608
610
|
for (var i = 0; i < charts.length; i += 1) {
|
|
609
|
-
var
|
|
610
|
-
var axisTypeMap = ChartUtils.groupArray(chart.axes, 'type');
|
|
611
|
+
var _chart = charts[i];
|
|
611
612
|
|
|
612
|
-
for (var j = 0; j <
|
|
613
|
-
var series =
|
|
613
|
+
for (var j = 0; j < _chart.series.length; j += 1) {
|
|
614
|
+
var series = _chart.series[j];
|
|
614
615
|
var {
|
|
615
616
|
sources
|
|
616
617
|
} = series;
|
|
@@ -684,7 +685,7 @@ class ChartUtils {
|
|
|
684
685
|
})();
|
|
685
686
|
}
|
|
686
687
|
|
|
687
|
-
if (axisFormats.size ===
|
|
688
|
+
if (axisFormats.size === _chart.axes.length) {
|
|
688
689
|
return axisFormats;
|
|
689
690
|
}
|
|
690
691
|
}
|
|
@@ -750,6 +751,15 @@ class ChartUtils {
|
|
|
750
751
|
return undefined;
|
|
751
752
|
}
|
|
752
753
|
}
|
|
754
|
+
/**
|
|
755
|
+
* Get all axes for a given `Figure`. Iterates through all charts axes and concatenates them.
|
|
756
|
+
* @param figure Figure to get all axes for
|
|
757
|
+
*/
|
|
758
|
+
|
|
759
|
+
|
|
760
|
+
static getAllAxes(figure) {
|
|
761
|
+
return figure.charts.reduce((axes, chart) => [...axes, ...chart.axes], []);
|
|
762
|
+
}
|
|
753
763
|
/**
|
|
754
764
|
* Retrieve the chart that contains the passed in series from the figure
|
|
755
765
|
* @param figure The figure to retrieve the chart from
|
|
@@ -763,11 +773,11 @@ class ChartUtils {
|
|
|
763
773
|
} = figure;
|
|
764
774
|
|
|
765
775
|
for (var i = 0; i < charts.length; i += 1) {
|
|
766
|
-
var
|
|
776
|
+
var _chart2 = charts[i];
|
|
767
777
|
|
|
768
|
-
for (var j = 0; j <
|
|
769
|
-
if (series ===
|
|
770
|
-
return
|
|
778
|
+
for (var j = 0; j < _chart2.series.length; j += 1) {
|
|
779
|
+
if (series === _chart2.series[j]) {
|
|
780
|
+
return _chart2;
|
|
771
781
|
}
|
|
772
782
|
}
|
|
773
783
|
}
|
|
@@ -798,47 +808,108 @@ class ChartUtils {
|
|
|
798
808
|
return ranges;
|
|
799
809
|
}
|
|
800
810
|
/**
|
|
801
|
-
*
|
|
802
|
-
*
|
|
803
|
-
*
|
|
804
|
-
*
|
|
805
|
-
* @param
|
|
806
|
-
* @param
|
|
807
|
-
* @param
|
|
808
|
-
* @param plotHeight The height of the plot to calculate the axis sizes for
|
|
809
|
-
* @param getRangeParser A function to retrieve the range parser for a given axis
|
|
811
|
+
* Update the layout with all the axes information for the provided figure
|
|
812
|
+
* @param figure Figure to update the axes for
|
|
813
|
+
* @param layoutParam Layout object to update in place
|
|
814
|
+
* @param chartAxisRangeParser Function to retrieve the axis range parser
|
|
815
|
+
* @param plotWidth Width of the plot in pixels
|
|
816
|
+
* @param plotHeight Height of the plot in pixels
|
|
817
|
+
* @param theme Theme used for displaying the plot
|
|
810
818
|
*/
|
|
811
819
|
|
|
812
820
|
|
|
813
|
-
static
|
|
821
|
+
static updateFigureAxes(layoutParam, figure, chartAxisRangeParser) {
|
|
822
|
+
var plotWidth = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;
|
|
823
|
+
var plotHeight = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 0;
|
|
824
|
+
var theme = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : ChartTheme;
|
|
825
|
+
var layout = layoutParam;
|
|
826
|
+
var figureAxes = ChartUtils.getAllAxes(figure);
|
|
827
|
+
|
|
828
|
+
for (var i = 0; i < figure.charts.length; i += 1) {
|
|
829
|
+
var _chart3 = figure.charts[i];
|
|
830
|
+
var axisRangeParser = chartAxisRangeParser === null || chartAxisRangeParser === void 0 ? void 0 : chartAxisRangeParser(_chart3);
|
|
831
|
+
var bounds = ChartUtils.getChartBounds(figure, _chart3, plotWidth, plotHeight);
|
|
832
|
+
ChartUtils.updateLayoutAxes(layout, _chart3.axes, figureAxes, plotWidth, plotHeight, bounds, axisRangeParser, theme);
|
|
833
|
+
}
|
|
834
|
+
|
|
835
|
+
ChartUtils.removeStaleAxes(layout, figureAxes);
|
|
836
|
+
}
|
|
837
|
+
|
|
838
|
+
static getChartBounds(figure, chart) {
|
|
839
|
+
var _axisPositionMap$get;
|
|
840
|
+
|
|
814
841
|
var plotWidth = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
|
|
815
842
|
var plotHeight = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;
|
|
816
|
-
var
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
843
|
+
var {
|
|
844
|
+
cols,
|
|
845
|
+
rows
|
|
846
|
+
} = figure;
|
|
847
|
+
var {
|
|
848
|
+
column,
|
|
849
|
+
colspan,
|
|
850
|
+
row,
|
|
851
|
+
rowspan
|
|
852
|
+
} = chart;
|
|
853
|
+
var endColumn = column + colspan;
|
|
854
|
+
var endRow = row + rowspan;
|
|
855
|
+
var columnSize = 1 / cols;
|
|
856
|
+
var rowSize = 1 / rows;
|
|
857
|
+
var xMarginSize = ChartUtils.AXIS_SIZE_PX / plotWidth;
|
|
858
|
+
var yMarginSize = ChartUtils.AXIS_SIZE_PX / plotHeight;
|
|
859
|
+
var bounds = {
|
|
860
|
+
left: column * columnSize + (column > 0 ? xMarginSize / 2 : 0),
|
|
861
|
+
bottom: row * rowSize + (row > 0 ? yMarginSize / 2 : 0),
|
|
862
|
+
top: endRow * rowSize - (endRow < rows ? yMarginSize / 2 : 0),
|
|
863
|
+
right: endColumn * columnSize - (endColumn < cols ? xMarginSize / 2 : 0)
|
|
864
|
+
}; // Adjust the bounds based on where the legend is
|
|
820
865
|
// For now, always assume the legend is shown on the right
|
|
821
866
|
|
|
822
|
-
var
|
|
823
|
-
|
|
824
|
-
bottom: 0,
|
|
825
|
-
top: 1,
|
|
826
|
-
right: 1
|
|
827
|
-
};
|
|
828
|
-
var axisPositionMap = ChartUtils.groupArray(axes, 'position');
|
|
829
|
-
var rightAxes = axisPositionMap.get(dh.plot.AxisPosition.RIGHT) || [];
|
|
867
|
+
var axisPositionMap = ChartUtils.groupArray(chart.axes, 'position');
|
|
868
|
+
var rightAxes = (_axisPositionMap$get = axisPositionMap.get(dh.plot.AxisPosition.RIGHT)) !== null && _axisPositionMap$get !== void 0 ? _axisPositionMap$get : [];
|
|
830
869
|
|
|
831
870
|
if (rightAxes.length > 0) {
|
|
832
871
|
if (plotWidth > 0) {
|
|
833
|
-
bounds.right
|
|
872
|
+
bounds.right -= (bounds.right - bounds.left) * Math.max(0, Math.min(ChartUtils.LEGEND_WIDTH_PX / plotWidth, ChartUtils.MAX_LEGEND_SIZE));
|
|
834
873
|
} else {
|
|
835
|
-
bounds.right
|
|
874
|
+
bounds.right -= (bounds.right - bounds.left) * ChartUtils.DEFAULT_AXIS_SIZE;
|
|
836
875
|
}
|
|
837
876
|
}
|
|
838
877
|
|
|
878
|
+
return bounds;
|
|
879
|
+
}
|
|
880
|
+
/**
|
|
881
|
+
* Updates the axes positions and sizes in the layout object provided.
|
|
882
|
+
* If the axis did not exist in the layout previously, it is created and added.
|
|
883
|
+
* Any axis that no longer exists in axes is removed.
|
|
884
|
+
* With Downsampling enabled, will also update the range on the axis itself as appropriate
|
|
885
|
+
* @param layoutParam The layout object to update
|
|
886
|
+
* @param chartAxes The chart axes to update the layout with
|
|
887
|
+
* @param figureAxes All figure axes to update the layout with
|
|
888
|
+
* @param plotWidth The width of the plot to calculate the axis sizes for
|
|
889
|
+
* @param plotHeight The height of the plot to calculate the axis sizes for
|
|
890
|
+
* @param bounds The bounds for this set of axes
|
|
891
|
+
* @param axisRangeParser A function to retrieve the range parser for a given axis
|
|
892
|
+
*/
|
|
893
|
+
|
|
894
|
+
|
|
895
|
+
static updateLayoutAxes(layoutParam, chartAxes, figureAxes) {
|
|
896
|
+
var plotWidth = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;
|
|
897
|
+
var plotHeight = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 0;
|
|
898
|
+
var bounds = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : {
|
|
899
|
+
left: 0,
|
|
900
|
+
top: 0,
|
|
901
|
+
right: 1,
|
|
902
|
+
bottom: 1
|
|
903
|
+
};
|
|
904
|
+
var axisRangeParser = arguments.length > 6 ? arguments[6] : undefined;
|
|
905
|
+
var theme = arguments.length > 7 && arguments[7] !== undefined ? arguments[7] : ChartTheme;
|
|
906
|
+
var xAxisSize = plotWidth > 0 ? Math.max(ChartUtils.MIN_AXIS_SIZE, Math.min(ChartUtils.AXIS_SIZE_PX / plotHeight, ChartUtils.MAX_AXIS_SIZE)) : ChartUtils.DEFAULT_AXIS_SIZE;
|
|
907
|
+
var yAxisSize = plotHeight > 0 ? Math.max(ChartUtils.MIN_AXIS_SIZE, Math.min(ChartUtils.AXIS_SIZE_PX / plotWidth, ChartUtils.MAX_AXIS_SIZE)) : ChartUtils.DEFAULT_AXIS_SIZE;
|
|
839
908
|
var layout = layoutParam;
|
|
840
|
-
var
|
|
909
|
+
var axisPositionMap = ChartUtils.groupArray(chartAxes, 'position');
|
|
910
|
+
var axisTypeMap = ChartUtils.groupArray(chartAxes, 'type');
|
|
841
911
|
var axisTypes = [...axisTypeMap.keys()];
|
|
912
|
+
var figureAxisTypeMap = ChartUtils.groupArray(figureAxes, 'type');
|
|
842
913
|
|
|
843
914
|
for (var j = 0; j < axisTypes.length; j += 1) {
|
|
844
915
|
var axisType = axisTypes[j];
|
|
@@ -846,31 +917,32 @@ class ChartUtils {
|
|
|
846
917
|
|
|
847
918
|
if (axisProperty != null) {
|
|
848
919
|
var typeAxes = axisTypeMap.get(axisType);
|
|
920
|
+
var figureTypeAxes = figureAxisTypeMap.get(axisType);
|
|
849
921
|
var isYAxis = axisType === dh.plot.AxisType.Y;
|
|
850
922
|
var plotSize = isYAxis ? plotHeight : plotWidth;
|
|
851
923
|
assertNotNull(typeAxes);
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
for (axisIndex = 0; axisIndex < typeAxes.length; axisIndex += 1) {
|
|
855
|
-
var _axis3 = typeAxes[axisIndex];
|
|
924
|
+
assertNotNull(figureTypeAxes);
|
|
856
925
|
|
|
857
|
-
|
|
926
|
+
for (var chartAxisIndex = 0; chartAxisIndex < typeAxes.length; chartAxisIndex += 1) {
|
|
927
|
+
var _axis3 = typeAxes[chartAxisIndex];
|
|
928
|
+
var figureAxisIndex = figureTypeAxes.indexOf(_axis3);
|
|
929
|
+
var axisLayoutProperty = ChartUtils.getAxisLayoutProperty(axisProperty, figureAxisIndex);
|
|
858
930
|
|
|
859
|
-
if (layout[
|
|
860
|
-
layout[
|
|
931
|
+
if (layout[axisLayoutProperty] == null) {
|
|
932
|
+
layout[axisLayoutProperty] = ChartUtils.makeLayoutAxis(axisType, theme);
|
|
861
933
|
}
|
|
862
934
|
|
|
863
|
-
var layoutAxis = layout[
|
|
935
|
+
var layoutAxis = layout[axisLayoutProperty];
|
|
864
936
|
|
|
865
937
|
if (layoutAxis != null) {
|
|
866
|
-
ChartUtils.updateLayoutAxis(layoutAxis, _axis3,
|
|
938
|
+
ChartUtils.updateLayoutAxis(layoutAxis, _axis3, chartAxisIndex, axisPositionMap, xAxisSize, yAxisSize, bounds);
|
|
867
939
|
var {
|
|
868
940
|
range: _range,
|
|
869
941
|
autorange
|
|
870
942
|
} = layoutAxis;
|
|
871
943
|
|
|
872
|
-
if (
|
|
873
|
-
var rangeParser =
|
|
944
|
+
if (axisRangeParser != null && _range !== undefined && (autorange === undefined || autorange === false)) {
|
|
945
|
+
var rangeParser = axisRangeParser(_axis3);
|
|
874
946
|
var [rangeStart, rangeEnd] = rangeParser(_range);
|
|
875
947
|
log.debug('Setting downsample range', plotSize, rangeStart, rangeEnd);
|
|
876
948
|
|
|
@@ -880,7 +952,30 @@ class ChartUtils {
|
|
|
880
952
|
}
|
|
881
953
|
}
|
|
882
954
|
}
|
|
955
|
+
}
|
|
956
|
+
}
|
|
957
|
+
}
|
|
958
|
+
/**
|
|
959
|
+
* Remove any axes from the layout param that no longer belong to any series
|
|
960
|
+
* @param layoutParam Layout object to remove stale axes from
|
|
961
|
+
* @param axes All axes in the figure
|
|
962
|
+
*/
|
|
883
963
|
|
|
964
|
+
|
|
965
|
+
static removeStaleAxes(layoutParam, axes) {
|
|
966
|
+
var layout = layoutParam;
|
|
967
|
+
var figureAxisTypeMap = ChartUtils.groupArray(axes, 'type');
|
|
968
|
+
var figureAxisTypes = [...figureAxisTypeMap.keys()];
|
|
969
|
+
|
|
970
|
+
for (var i = 0; i < figureAxisTypes.length; i += 1) {
|
|
971
|
+
var axisType = figureAxisTypes[i];
|
|
972
|
+
var typeAxes = figureAxisTypeMap.get(axisType);
|
|
973
|
+
assertNotNull(typeAxes);
|
|
974
|
+
var axisIndex = typeAxes.length; // Delete any axes that may no longer exist
|
|
975
|
+
|
|
976
|
+
var axisProperty = ChartUtils.getAxisPropertyName(axisType);
|
|
977
|
+
|
|
978
|
+
if (axisProperty != null) {
|
|
884
979
|
var axisLayoutProperty = ChartUtils.getAxisLayoutProperty(axisProperty, axisIndex);
|
|
885
980
|
|
|
886
981
|
while (layout[axisLayoutProperty] != null) {
|
|
@@ -932,10 +1027,10 @@ class ChartUtils {
|
|
|
932
1027
|
layoutAxis.side = ChartUtils.getAxisSide(axis.position);
|
|
933
1028
|
|
|
934
1029
|
if (axisIndex > 0) {
|
|
935
|
-
var _ChartUtils$getAxisPr, _axisPositionMap$
|
|
1030
|
+
var _ChartUtils$getAxisPr, _axisPositionMap$get2;
|
|
936
1031
|
|
|
937
1032
|
layoutAxis.overlaying = (_ChartUtils$getAxisPr = ChartUtils.getAxisPropertyName(axis.type)) !== null && _ChartUtils$getAxisPr !== void 0 ? _ChartUtils$getAxisPr : undefined;
|
|
938
|
-
var positionAxes = (_axisPositionMap$
|
|
1033
|
+
var positionAxes = (_axisPositionMap$get2 = axisPositionMap.get(axis.position)) !== null && _axisPositionMap$get2 !== void 0 ? _axisPositionMap$get2 : [];
|
|
939
1034
|
var sideIndex = positionAxes.indexOf(axis);
|
|
940
1035
|
|
|
941
1036
|
if (sideIndex > 0) {
|