Skip to content

Commit e8eef1c

Browse files
committed
centralize & reuse hide logic in bars & funnelarea
1 parent 035d8dd commit e8eef1c

File tree

6 files changed

+12
-10
lines changed

6 files changed

+12
-10
lines changed

draftlogs/6335_fix.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
- Hide pie text on empty slices to avoid PDF exports in MS Word from SVG imports [[#6335](https://github.com/plotly/plotly.js/pull/6335)]
1+
- Hide text on empty slices to avoid PDF exports in MS Word from SVG imports [[#6335](https://github.com/plotly/plotly.js/pull/6335)]

src/lib/index.js

+5
Original file line numberDiff line numberDiff line change
@@ -1331,6 +1331,11 @@ lib.getTextTransform = function(transform) {
13311331
);
13321332
};
13331333

1334+
lib.setTransormAndDisplay = function(s, transform) {
1335+
s.attr('transform', lib.getTextTransform(transform));
1336+
s.style('display', transform.scale ? null : 'none');
1337+
};
1338+
13341339
lib.ensureUniformFontSize = function(gd, baseFont) {
13351340
var out = lib.extendFlat({}, baseFont);
13361341
out.size = Math.max(

src/traces/bar/plot.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -431,8 +431,8 @@ function appendBarText(gd, plotinfo, bar, cd, i, x0, x1, y0, y1, opts, makeOnCom
431431
recordMinTextSize(trace.type === 'histogram' ? 'bar' : trace.type, transform, fullLayout);
432432
calcBar.transform = transform;
433433

434-
transition(textSelection, fullLayout, opts, makeOnCompleteCallback)
435-
.attr('transform', Lib.getTextTransform(transform));
434+
var s = transition(textSelection, fullLayout, opts, makeOnCompleteCallback);
435+
Lib.setTransormAndDisplay(s, transform);
436436
}
437437

438438
function getRotateFromAngle(angle) {

src/traces/bar/uniform_text.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ function resizeText(gd, gTrace, traceType) {
3030
transform.scale = (shouldHide && transform.hide) ? 0 : minSize / transform.fontSize;
3131

3232
var el = d3.select(this).select('text');
33-
el.attr('transform', Lib.getTextTransform(transform));
33+
Lib.setTransormAndDisplay(el, transform);
3434
}
3535
});
3636
}

src/traces/funnelarea/plot.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ module.exports = function plot(gd, cdModule) {
128128
recordMinTextSize(trace.type, transform, fullLayout);
129129
cd[i].transform = transform;
130130

131-
sliceText.attr('transform', Lib.getTextTransform(transform));
131+
Lib.setTransormAndDisplay(sliceText, transform);
132132
});
133133
});
134134

src/traces/pie/plot.js

+2-5
Original file line numberDiff line numberDiff line change
@@ -199,10 +199,7 @@ function plot(gd, cdModule) {
199199
recordMinTextSize(trace.type, transform, fullLayout);
200200
cd[i].transform = transform;
201201

202-
sliceText.attr('transform', Lib.getTextTransform(transform));
203-
204-
// hide text for empty slices
205-
sliceText.style('display', transform.scale ? null : 'none');
202+
Lib.setTransormAndDisplay(sliceText, transform);
206203
});
207204
});
208205

@@ -310,7 +307,7 @@ function plotTextLines(slices, trace) {
310307
pt.transform.targetX += pt.labelExtraX;
311308
pt.transform.targetY += pt.labelExtraY;
312309

313-
sliceText.attr('transform', Lib.getTextTransform(pt.transform));
310+
Lib.setTransormAndDisplay(sliceText, pt.transform);
314311

315312
// then add a line to the new location
316313
var lineStartX = pt.cxFinal + pt.pxmid[0];

0 commit comments

Comments
 (0)