RE: LogPlot != Plot[Log]

*To*: mathgroup at smc.vnet.net*Subject*: [mg24281] RE: [mg24266] LogPlot != Plot[Log]*From*: Wolf Hartmut <hwolf at debis.com>*Date*: Fri, 7 Jul 2000 00:11:24 -0400 (EDT)*Sender*: owner-wri-mathgroup at wolfram.com

> -----Original Message----- > From: Gy. Csanady [SMTP:csanady at gsf.de] To: mathgroup at smc.vnet.net > Sent: Thursday, July 06, 2000 5:11 AM > To: mathgroup at smc.vnet.net > Subject: [mg24266] LogPlot != Plot[Log] > > Dear Steve Christensen, > > I should like to post the following question to the Mathgroup. I am > relatively new with Mathematica and I encountered a problem.. > > > Dear MathGroup, > I should like to demonstrate some transformation rules graphically using > Mathematica extended capabilities. However, the simplest example failed: > Let assume a simple exponential function with real parameters: > > C1[t_] := C0*Exp[-kel*t] > > param = {C0 -> 100, kel -> 1} > > we can plot the function easily: > > g1 = Plot[C1[t] /. param, {t, 0, 2}, PlotRange -> {{0, 2}, {10, 100}}] > > > We can also make a half- logarithmic plot: > > g2 = Plot[Log[E, C1[t]] /. param, {t, 0, 2}, PlotStyle -> {RGBColor[0, 0, > 1], > Dashing[{0.05, 0.05}]}, PlotRange -> {{0, 2}, {Log[10], Log[100]}}] > > In addition we can convert the y-axis to a logarithmic one: > > g3 = Show[g2, Ticks -> Join[{FullOptions[g2, Ticks][[1]], FullOptions[g2, > Ticks][[2]] /. {x_, y_Real, len_, style_} :> {x, Exp[y], len, style}}]] > > We can obtain a half-logarithmic plot by using the LogPlot function: > > << Graphics`Graphics` > > g4 = LogPlot[C1[t] /. param, {t, 0, 2}, PlotRange -> {{0, 2}, {10, 100}}] > > Now I would expect that plot g4 and g3 become identic: > > Show[{g3, g4}, PlotRange -> All] > > But it is not the case. I am sure that there is something wrong. Any help > would be appreciated. > With best regards > Gy. Csanady > > [Wolf Hartmut] There is no mystery here, you only need base 10 for the logarithm. See In[9]:= g2a = Plot[Log[10, C1[t]] /. param, {t, 0, 2}, PlotStyle -> {RGBColor[1, 0, 1], Dashing[{0.05, 0.07}], Thickness[0.01]}, PlotRange -> {{0, 2}, {Log[10, 10], Log[10, 100]}}] In[10]:= g3a = Show[g2a, Ticks -> Join[{FullOptions[g2a, Ticks][[1]], FullOptions[g2a, Ticks][[2]] /. {x_, y_Real, len_, style_} :> {x, 10^y, len, style}}]] and then In[16]:= Show[{g4, g3a}] However In[15]:= g3d = Show[g2a, Ticks -> {Automatic, LogScale[1, 2]}] In[17]:= Show[{g3d, g4}] is less work! Kind regards, Hartmut Wolf