如何将ListPlot的图形与Plot的图形组合?

Bla*_*dow 13 wolfram-mathematica

有没有办法将a ListPlot的图形与图形相结合Plot?(我需要在ListPlot的图形上绘制函数的图形)

nin*_*cko 18

您可以将任何图形与Show功能组合在一起,如下所示:

Show[myListPlot, myPlot]
Run Code Online (Sandbox Code Playgroud)

这概括为一次合并任意数量的图:Show[p1, p2, p3, p4, ...]Show[{p1,p2,p3,p4,...}]


参考和图像来源:http://reference.wolfram.com/mathematica/ref/Show.html

在此输入图像描述

在此输入图像描述


您也可以使用Epilog,如果Show没有以正确的顺序堆叠图形,但将2个以上的图形与Epilog组合将是不实用的.

  • 我不明白你的最后一行...要解释为什么`Epilog`是过度杀戮或你的意思是"堆叠顺序"? (2认同)

abc*_*bcd 9

从你的第二行开始,我认为Epilog你正在寻找.这是一个例子:

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]
 ]
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

另一种方法是使用 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]
Run Code Online (Sandbox Code Playgroud)

另一方面,如果我错了,你只是想将它们组合在一起,那么你可以使用GraphicsRow或者GraphicsColumn.

FullGraphics@GraphicsRow[{p1, p2}]
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述