Re: How to make large graphics object fit within a plot?
- To: mathgroup at smc.vnet.net
- Subject: [mg105484] Re: [mg105448] How to make large graphics object fit within a plot?
- From: "David Park" <djmpark at comcast.net>
- Date: Fri, 4 Dec 2009 04:34:25 -0500 (EST)
- References: <21622849.1259839260168.JavaMail.root@n11>
Nasser, I thought you asked that question back on 25 Nov and received a number of answers. In any case, here is a Presentations solution that works straight off because Mathematica has access to all the primitives at once. Needs["Presentations`Master`"] Draw2D[ {Draw[Sin[x], {x, 0, 10}], Opacity[.5, Orange], Disk[{5, 0}, 2]}, Frame -> True] But, in general, you may have to specify things like PlotRange, PlotRangePadding, ImagePadding and other things. The fact that Mathematica makes some nice plots with minimal effort leads to a false impression that it will make all plots with minimal effort. This is just not the case. Most nice plots are going to require a little effort. Some are going to require A LOT of effort if you want them to look their best. David Park djmpark at comcast.net http://home.comcast.net/~djmpark/ From: Nasser M. Abbasi [mailto:nma at 12000.org] I am trying to add a disk at some location on top of an existing plot. So I use Epilog to add the disk. But it seems if the disk is larger than the plot image size, it gets chopped off. I wanted the whole disk to show. I tried increasing ImagePadding for the plot, and also ImageMargins, but this did not help. Here is what I tried Plot[Sin[x], {x, 0, 10}, AspectRatio -> Automatic, Epilog -> {Disk[{5, 0}, 2]}] Show[Plot[Sin[x], {x, 0, 10}, AspectRatio -> Automatic], Graphics[Disk[{5, 0}, 2]]] Show[Plot[Sin[x], {x, 0, 10}, AspectRatio -> Automatic, PlotRange -> Automatic], Graphics[Disk[{5, 0}, 2]]] None of the above works. But the below WORKS: Show[Plot[Sin[x], {x, 0, 10}, AspectRatio -> Automatic, PlotRange -> {Automatic,{-3,3}}], Graphics[Disk[{5, 0}, 2]]] So, I had to explicitly make the plot y-axis large enough to accommodate the disk to make it 'fit' I wanted to do this automatically. I am sure there is a way. I just thought of something, may be I need to look at Inset[] may be there is something there? which I'll do that next. --Nasser