LogPlot xponential tickMarks与frame->不兼容;真正

时间:2016-05-02 02:25:52

标签: plot graphics wolfram-mathematica

我希望制作一个带有对数y轴刻度的图,带有指数刻度线(例如10 ^ -1,10 ^ 0,10 ^ 1,10 ^ 2,...)。以下是一个例子:

LogPlot[{t, t^2, 1/t}, {t, 1, 250}, FrameLabel -> {t,y}, Ticks -> {{40, 80, 120, 160, 200, 240}, Table[{10^i, Superscript[10, i]}, {i, -2, 4}]}, PlotStyle -> {{Thick, Blue}, {Thick, Dashing[Large]}, {Black, Dotted}}]

此外,我还希望对情节有完整的框架。当我添加

Frame->True

然而,指数刻度线受到损害。这有什么解决方案吗?谢谢!

1 个答案:

答案 0 :(得分:0)

使用Frame -> True,您应该使用FrameTicks代替Ticks

xticks = {40, 80, 120, 160, 200, 240};
yticks = Table[{10^i, Superscript[10, i]}, {i, -2, 4}];
LogPlot[{t, t^2, 1/t}, {t, 1, 250}, FrameLabel -> {t, y}, Frame -> True, 
 FrameTicks -> {{yticks, {#[[1]], ""} & /@ yticks}, {xticks, {#, ""} & /@ xticks}}, 
 PlotStyle -> {{Thick, Blue}, {Thick, Dashing[Large]}, {Black, Dotted}}]
  

plot