我在使用Mathematica中的绘图功能时遇到了问题。 我试图在semilog图上绘制几个数据列表,然后添加一个图例。情节很好:
Show[ListLogPlot[bead31, PlotStyle -> Black,
PlotMarkers -> {"\[FilledSmallSquare]"}],
ListLogPlot[bead27, PlotStyle -> Blue,
PlotMarkers -> {"\[FilledSmallSquare]"}],
ListLogPlot[A5, PlotStyle -> Red,
PlotMarkers -> {"\[FilledSmallSquare]"}],
ListLogPlot[A10, PlotStyle -> Green,
PlotMarkers -> {"\[FilledSmallSquare]"}],
ListLogPlot[A20, PlotStyle -> Gray,
PlotMarkers -> {"\[FilledSmallSquare]"}], Frame -> True,
FrameLabel -> {Subscript[t, norm], \[Kappa]}, RotateLabel -> False,
PlotRange -> Automatic]
然而,任何添加图例的尝试都会失败,或者以相同的比例放置 - 而且由于它是一个semilog图,所以我看到的只是一个传奇线。
我尝试将图例分别创建为Graphics对象:
但是我无法弄清楚如何将它放在图像中(我正在使用Inset []和Epilog [],但我认为我使用它们是错误的)。
Show[Graphics[
Legend[{{Graphics[{Black, Rectangle[{-1, -1}, {1, 1}]}],
"31 beads"}, {Graphics[{Blue, Rectangle[{-1, -1}, {1, 1}]}],
"27 beads"},
{Graphics[{Red, Rectangle[{-1, -1}, {1, 1}]}], "A5"},
{Graphics[{Green, Rectangle[{-1, -1}, {1, 1}]}], "A10"},
{Graphics[{Gray, Rectangle[{-1, -1}, {1, 1}]}], "A20"}}]]]
如果有人知道如何将图例正确添加到第一张图表中,那么我们将非常感谢您提供帮助。
答案 0 :(得分:3)
也许:
Needs["PlotLegends`"];
ListLogPlot[{
Table[PartitionsQ[n], {n, 50}],
Table[{n, n!}, {n, 1, 20, .1}]},
PlotLegend -> {"Parts", "Fact"}, LegendPosition -> {0.8, -0.8}]