I have the following two functions
p2modeg1 = (((κ1*cc1)/((Γ + κ1)*(1 + cc1))*(n1 + 1/2) + ((κ1 + Γ*(1 + cc1))/((Γ + κ1)*(1 + cc1)))*(nm + 1/2)) /. {cc1 -> (4*g1^2)/(κ1*Γ), nm -> 300, n1 -> 1/10, n2 -> 1/10}) /. {κ1 -> 1, Γ -> 1/100}
p3AEg1 = (((κ1*cc1)/((κ1*(1 + cc2) + Γ)*(1 + cc2 + cc1))*(n1 + 1/2) + (κ1*cc1*cc2)/((κ1*(1 + cc2) + Γ)*(1 + cc2 + cc1))*(n2 + 1/2) + ((1 + cc2 + cc1)*Γ + κ1 (1 + cc2)^2)/((κ1*(1 + cc2) + Γ)*(1 + cc2 + cc1))*(nm + 1/2)) /. {cc1 -> (4*g1^2)/(κ1*Γ), cc2 -> 4*g2^2/(κ1*κ2), nm -> 300, n1 -> 1/10, n2 -> 1/10}) /. {κ1 -> 1, Γ -> 1/100}
And I wish to make Log-Log plots of these two functions. Doing the regular LogLogPlot
Show[{LogLogPlot[p3AEg1 /. {κ2 -> 20, g2 -> 10}, {g1, 1/100, 100}, PlotStyle -> Directive[Thick, Orange, Dashed], PlotRange -> All], LogLogPlot[p2modeg1, {g1, 1/100, 100}, PlotRange -> All, PlotStyle -> Directive[Thick, Red, Dashed]]}, ImageSize -> Medium, PlotRange -> All]
Gives
Which is all good. However, when I try to include this in SciDraw
:
Figure[
FigurePanel[
{
SetOptions[LogTicks, LogPlot -> True];
FigGraphics[LogLogPlot[p3AEg1 /. {\[Kappa]2 -> 20, g2 -> 10}, {g1, 1/100, 100}, PlotRange -> All, PlotStyle -> Directive[Thick, Orange, Dashed]]];
FigGraphics[LogLogPlot[p2modeg1, {g1, 1/100, 100}, PlotRange -> All, PlotStyle -> Directive[Thick, Red, Dashed]]];
FrameTicks -> {LogTicks[0, 3, ShowMinorTicks -> True], LogTicks[0, 3, ShowMinorTicks -> True]};
},
XPlotRange -> {0.01, 5},
XFrameLabel -> textit["\!\(\*SubscriptBox[\(g\), \(1\)]\)"],
YPlotRange -> {0.01, 5},
YFrameLabel -> textit["\!\(\*SubscriptBox[\(n\), \\(b\)]\)+\!\(\*FractionBox[\(1\), \(2\)]\)"]
],
CanvasSize -> {5, 3.5}, CanvasFrame -> True
]
Not only is the frame not showing powers of 10, but the curves seems to be skewed and mostly covered by the frame. I wish to show powers of 10 on the y-axis and x-axis and replicate the plot in SciDraw
as shown in the first plot. How should I go about doing this?
Thanks!
Edit:I have messed around with the ranges and it turns out that the curves plotted in FigurePanel
has axes that shows the Log-ed values whereas the regular LogLogPlot
takes the Log-ed values but displays the original axes (0.01 to 100 on the x-axis):
How do I make SciDraw
display ticks in powers of 10? The regular LogTicks
doesn't work as shown in the y-axis.