Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I combine the graphic of a ListPlot with the graphic of a Plot?

Is there a way to combine the graphic of a ListPlot to the graphic of a Plot? (I need to plot a graphic of a function on the graphic of a ListPlot)

like image 950
BlackShadow Avatar asked May 30 '11 20:05

BlackShadow


2 Answers

You can combine any graphics with the Show function like so:

Show[myListPlot, myPlot]

This generalizes to combining any number of plots at once: Show[p1, p2, p3, p4, ...] or Show[{p1,p2,p3,p4,...}]


Reference and image source: http://reference.wolfram.com/mathematica/ref/Show.html

enter image description here

enter image description here


You can use Epilog as well if Show is not stacking the graphics in the correct order, but combining more than 2 graphics with Epilog will be unwieldy.

like image 157
ninjagecko Avatar answered Dec 05 '22 09:12

ninjagecko


From your second line, I think Epilog is what you are looking for. Here's an example:

f[x_] := 1/Sqrt[2 Pi] Exp[-(x^2)/2];
ListPlot[
 Table[
  {x, PDF[NormalDistribution[], x]}, {x, -4, 4, 0.1}
  ],
 Epilog -> First@Plot[f[x], {x, -4, 4}, PlotStyle -> Red]
 ]

enter image description here

Another way to do the same would be to use Show

p1 = ListPlot[
   Table[
    {x, PDF[NormalDistribution[], x]}, {x, -4, 4, 0.1}
    ]
   ];
p2 = Plot[f[x], {x, -4, 4}, PlotStyle -> Red];
Show[p1,p2]

On the other hand, if I was mistaken and you just wanted to combine them in the sense one next to the other, then you can use GraphicsRow or GraphicsColumn.

FullGraphics@GraphicsRow[{p1, p2}]

enter image description here

like image 34
abcd Avatar answered Dec 05 '22 08:12

abcd