Skip to content

Commit 346f27e

Browse files
committed
Update reservedMargins for colorbars
1 parent 7d38cf0 commit 346f27e

File tree

1 file changed

+20
-1
lines changed

1 file changed

+20
-1
lines changed

src/components/colorbar/draw.js

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -182,6 +182,9 @@ function drawColorBar(g, opts, gd) {
182182
var optsX = opts.x;
183183
var optsY = isVertical ? opts.y : 1 - opts.y;
184184

185+
var isPaperY = opts.yref === 'paper';
186+
var isPaperX = opts.xref === 'paper';
187+
185188
var fullLayout = gd._fullLayout;
186189
var gs = fullLayout._size;
187190

@@ -802,8 +805,24 @@ function drawColorBar(g, opts, gd) {
802805
marginOpts.yb = optsY + thickness * bFrac;
803806
}
804807
}
808+
var sideY = opts.y < 0.5 ? 'b' : 't';
809+
var sideX = opts.x < 0.5 ? 'l' : 'r';
810+
811+
gd._fullLayout._reservedMargin[opts._id] = {}
805812

806-
Plots.autoMargin(gd, opts._id, marginOpts);
813+
if(isPaperX && isPaperY) {
814+
Plots.autoMargin(gd, opts._id, marginOpts);
815+
} else if(isPaperX) {
816+
gd._fullLayout._reservedMargin[opts._id][sideY] = marginOpts[sideY];
817+
} else if(isPaperY) {
818+
gd._fullLayout._reservedMargin[opts._id][sideX] = marginOpts[sideX];
819+
} else {
820+
if(isVertical) {
821+
gd._fullLayout._reservedMargin[opts._id][sideX] = marginOpts[sideX];
822+
} else {
823+
gd._fullLayout._reservedMargin[opts._id][sideY] = marginOpts[sideY];
824+
}
825+
}
807826
}
808827

809828
return Lib.syncOrAsync([

0 commit comments

Comments
 (0)