Skip to content

Commit 41cb1c6

Browse files
Fix more type issues
1 parent 757d255 commit 41cb1c6

File tree

6 files changed

+14
-20
lines changed

6 files changed

+14
-20
lines changed

docs/data/charts/bars/bars.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -141,6 +141,10 @@ The bar charts use by priority:
141141

142142
Learn more about the `colorMap` properties in the [Styling docs](/x/react-charts/styling/#values-color).
143143

144+
:::warning
145+
The `colorMap` property does not work for the numerical axis of bar range charts (i.e., the y-axis for vertical bar charts and the x-axis for horizontal bar charts).
146+
:::
147+
144148
{{"demo": "ColorScale.js"}}
145149

146150
### Border radius

packages/x-charts/src/BarChart/seriesConfig/barRangeGetColor.ts

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -4,22 +4,8 @@ const getColor: ColorProcessor<'barRange'> = (series, xAxis, yAxis) => {
44
const verticalLayout = series.layout === 'vertical';
55

66
const bandColorScale = verticalLayout ? xAxis?.colorScale : yAxis?.colorScale;
7-
const valueColorScale = verticalLayout ? yAxis?.colorScale : xAxis?.colorScale;
87
const bandValues = verticalLayout ? xAxis?.data : yAxis?.data;
98

10-
if (valueColorScale) {
11-
return (dataIndex?: number) => {
12-
if (dataIndex === undefined) {
13-
return series.color;
14-
}
15-
const value = series.data[dataIndex];
16-
const color = value === null ? series.color : valueColorScale(value);
17-
if (color === null) {
18-
return series.color;
19-
}
20-
return color;
21-
};
22-
}
239
if (bandColorScale && bandValues) {
2410
return (dataIndex?: number) => {
2511
if (dataIndex === undefined) {

packages/x-charts/src/BarChart/seriesConfig/index.ts

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,9 @@ import seriesProcessor from './seriesProcessor';
88
import legendGetter from './legend';
99
import getColor from './getColor';
1010
import tooltipGetter, { axisTooltipGetter } from './tooltip';
11+
import barRangeTooltipGetter, {
12+
axisTooltipGetter as barRangeAxisTooltipGetter,
13+
} from './barRangeTooltip';
1114
import tooltipItemPositionGetter from './tooltipPosition';
1215
import { getSeriesWithDefaultValues } from './getSeriesWithDefaultValues';
1316
import barRangeSeriesProcessor from './barRangeSeriesProcessor';
@@ -29,9 +32,9 @@ export const barRangeSeriesConfig: ChartSeriesTypeConfig<'barRange'> = {
2932
seriesProcessor: barRangeSeriesProcessor,
3033
colorProcessor: barRangeGetColor,
3134
legendGetter,
32-
tooltipGetter,
35+
tooltipGetter: barRangeTooltipGetter,
3336
tooltipItemPositionGetter,
34-
axisTooltipGetter,
37+
axisTooltipGetter: barRangeAxisTooltipGetter,
3538
xExtremumGetter: getBarRangeExtremumX,
3639
yExtremumGetter: getBarRangeExtremumY,
3740
getSeriesWithDefaultValues: (...args) => getSeriesWithDefaultValues<'barRange'>(...args),

packages/x-charts/src/BarChart/seriesConfig/tooltip.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { getLabel } from '../../internals/getLabel';
22
import type { AxisTooltipGetter, TooltipGetter } from '../../internals/plugins/models';
33

4-
const tooltipGetter: TooltipGetter<'bar' | 'barRange'> = (params) => {
4+
const tooltipGetter: TooltipGetter<'bar'> = (params) => {
55
const { series, getColor, identifier } = params;
66

77
if (!identifier || identifier.dataIndex === undefined) {
@@ -27,7 +27,7 @@ const tooltipGetter: TooltipGetter<'bar' | 'barRange'> = (params) => {
2727
};
2828
};
2929

30-
export const axisTooltipGetter: AxisTooltipGetter<'bar' | 'barRange', 'x' | 'y'> = (series) => {
30+
export const axisTooltipGetter: AxisTooltipGetter<'bar', 'x' | 'y'> = (series) => {
3131
return Object.values(series).map((s) =>
3232
s.layout === 'horizontal'
3333
? { direction: 'y', axisId: s.yAxisId }

packages/x-charts/src/BarChart/seriesConfig/tooltipPosition.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import type { TooltipItemPositionGetter } from '../../internals/plugins/models/seriesConfig/tooltipItemPositionGetter.types';
22
import { getBarDimensions } from '../useBarPlotData';
33

4-
const tooltipItemPositionGetter: TooltipItemPositionGetter<'bar'> = (params) => {
4+
const tooltipItemPositionGetter: TooltipItemPositionGetter<'bar' | 'barRange'> = (params) => {
55
const { series, identifier, axesConfig, placement } = params;
66

77
if (!identifier || identifier.dataIndex === undefined) {

packages/x-charts/src/BarChart/useBarRangePlotData.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import { checkScaleErrors } from './checkScaleErrors';
66
import { SeriesProcessorResult } from '../internals/plugins/models/seriesConfig/seriesProcessor.types';
77
import { ComputedAxisConfig } from '../internals/plugins/featurePlugins/useChartCartesianAxis/useChartCartesianAxis.types';
88
import { useBarRangeSeriesContext } from '../hooks/useBarRangeSeries';
9+
import barRangeGetColor from './seriesConfig/barRangeGetColor';
910

1011
export function useBarRangePlotData(
1112
drawingArea: ChartDrawingArea,
@@ -50,7 +51,7 @@ export function useBarRangePlotData(
5051
const xScale = xAxisConfig.scale;
5152
const yScale = yAxisConfig.scale;
5253

53-
const colorGetter = getColor(series[seriesId], xAxes[xAxisId], yAxes[yAxisId]);
54+
const colorGetter = barRangeGetColor(series[seriesId], xAxes[xAxisId], yAxes[yAxisId]);
5455
const bandWidth = baseScaleConfig.scale.bandwidth();
5556

5657
const { barWidth, offset } = getBandSize({

0 commit comments

Comments
 (0)