# How can I get Overlay to position graphics according to coordinates?

If I draw graphics like this, I get exactly what I need:

Graphics[{{Blue, Disk[{0, 0}, 10, {0, Pi/2}]}, {Red,
Disk[{0, 0}, 3, {0, Pi/4}]}}] But I need to accomplish this task with Overlay[]. Here's the code:

graphics1 = Graphics[{Red, Disk[{0, 0}, 3, {0, Pi/4}]}];
graphics2 = Graphics[{Blue, Disk[{0, 0}, 10, {0, Pi/2}]}];
Overlay[{graphics2, graphics1}]


And I get this as output: How can I position these graphics according to coordinates?
Thank you for any suggestions or answers.

• Why does it have to be Overlay specifically? I think what you are looking for combining multiple Graphics objects to one, for which Overlay is not the right function. Jan 18, 2012 at 0:41
• Indeed it does not have to be 'Overlay', I didn't think of 'Show' Jan 18, 2012 at 11:46

Can you use Show? It produces the same thing as your first plot:

Graphics1 = Graphics[{Red, Disk[{0, 0}, 3, {0, Pi/4}]}];
graphics2 = Graphics[{Blue, Disk[{0, 0}, 10, {0, Pi/2}]}];
Show[{graphics2, graphics1}] If you want to add other options, it works as well:

Show[{graphics2, graphics1}, PlotRange->{{-10, +10}, {-10, +10}}] You should note that Show is order dependent. It draws it in the order that's specified

You can get the desired result using a combination of ImageSize in the original image and the Alignment option in Overlay. (I am not 100% sure why the alignment isn't quite right.)

graphics1 =
Graphics[{Red, Disk[{0, 0}, 3, {0, Pi/4}]}, ImageSize -> 100];
graphics2 =
Graphics[{Blue, Disk[{0, 0}, 10, {0, Pi/2}]}, ImageSize -> 250];
Overlay[{graphics2, graphics1}, Alignment -> Bottom] The issue here is that overlay will set the sizes of the two images to be the same if it has no information requiring it to do otherwise. So the coordinate systems of the two graphics can differ. This is why Show works more seamlessly here: it forces the two graphics to have the same coordinate system.

• I encountered the same problem with Alignment, but you're right Show is much more appropriate approach than Overlay is for this task, thank you for answer Jan 18, 2012 at 12:01
• You can improve the alignment with PlotRangePadding -> None on both graphics Oct 19, 2014 at 11:58