Skip to content

Commit e1d94b7

Browse files
authored
Merge pull request #6335 from plotly/pie-empty-slices
Hide text on empty slices to avoid PDF exports in MS Word from SVG imports
2 parents 3ae9c77 + e8eef1c commit e1d94b7

File tree

6 files changed

+12
-6
lines changed

6 files changed

+12
-6
lines changed

draftlogs/6335_fix.md

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
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-2
Original file line numberDiff line numberDiff line change
@@ -199,7 +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));
202+
Lib.setTransormAndDisplay(sliceText, transform);
203203
});
204204
});
205205

@@ -307,7 +307,7 @@ function plotTextLines(slices, trace) {
307307
pt.transform.targetX += pt.labelExtraX;
308308
pt.transform.targetY += pt.labelExtraY;
309309

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

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

0 commit comments

Comments
 (0)