Skip to content

Commit 6298d36

Browse files
monferamarkov00
authored andcommitted
fix(partition): single slice wrong text positioning (#643)
This commit fix the partition chart avoiding filling a single slice if the inner radius is nonzero. fix #637
1 parent 3aa235e commit 6298d36

File tree

3 files changed

+6
-6
lines changed

3 files changed

+6
-6
lines changed

src/chart_types/partition_chart/layout/viewmodel/fill_text_layout.ts

+4-4
Original file line numberDiff line numberDiff line change
@@ -94,9 +94,9 @@ export function ringSectorConstruction(config: Config, innerRadius: Radius, ring
9494
fillRectangleWidth,
9595
fillRectangleHeight,
9696
} = config;
97-
const innerR =
98-
(fillOutside ? ringSectorOuterRadius : ringSectorInnerRadius)(innerRadius, ringThickness)(ringSector) +
99-
circlePadding * 2;
97+
const radiusGetter = fillOutside ? ringSectorOuterRadius : ringSectorInnerRadius;
98+
const geometricInnerRadius = radiusGetter(innerRadius, ringThickness)(ringSector);
99+
const innerR = geometricInnerRadius + circlePadding * 2;
100100
const outerR = Math.max(
101101
innerR,
102102
ringSectorOuterRadius(innerRadius, ringThickness)(ringSector) - circlePadding + (fillOutside ? radiusOutside : 0),
@@ -110,7 +110,7 @@ export function ringSectorConstruction(config: Config, innerRadius: Radius, ring
110110
const sectorEndCircle = angleToCircline(midRadius, endAngle + radialPadding, 1);
111111
const outerRadiusFromRectangleWidth = fillRectangleWidth / 2;
112112
const outerRadiusFromRectanglHeight = fillRectangleHeight / 2;
113-
const fullCircle = ringSector.x0 === 0 && ringSector.x1 === TAU;
113+
const fullCircle = ringSector.x0 === 0 && ringSector.x1 === TAU && geometricInnerRadius === 0;
114114
const sectorCirclines = [
115115
...(fullCircle && innerRadius === 0 ? [] : [innerCircline]),
116116
outerCircline,

stories/sunburst/15_single_sunburst.tsx

+2-2
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ export const example = () => (
4949
},
5050
{
5151
groupByRollup: (d: Datum) => countryLookup[d.dest].continentCountry.substr(0, 2),
52-
nodeLabel: (d: any) => regionLookup[d].regionName,
52+
nodeLabel: (d: any) => regionLookup[d].regionName.replace(/\s/g, '\u00A0'),
5353
shape: {
5454
fillColor: (d: ShapeTreeNode) => {
5555
return categoricalFillColor(colorBrewerCategoricalStark9, 0.5)(d.parent.sortIndex);
@@ -58,7 +58,7 @@ export const example = () => (
5858
},
5959
{
6060
groupByRollup: (d: Datum) => d.dest,
61-
nodeLabel: (d: any) => countryLookup[d].name,
61+
nodeLabel: (d: any) => countryLookup[d].name.replace(/\s/g, '\u00A0'),
6262
shape: {
6363
fillColor: (d: ShapeTreeNode) => {
6464
return categoricalFillColor(colorBrewerCategoricalStark9, 0.3)(d.parent.parent.sortIndex);

0 commit comments

Comments
 (0)