How do I create a plot that is logscale in y and mixed log/linear scale in x?

2 vues (au cours des 30 derniers jours)
David
David le 16 Avr 2014
Modifié(e) : dpb le 17 Avr 2014
I am plotting a function on [0,180] that is nearly singular about 0. I want loglog over [0,10] and then semilogy over [10,180]. An example of the function is:
y=1/(1+2*k-cos(x)).^2;
where k is << 1.
  2 commentaires
dpb
dpb le 16 Avr 2014
Use
subplot(1,2)
to create two axes then adjust they're positions to fill in the space between, hiding the left y-axis on the RH axes. Set the two axes xlim property appropriately for the two ranges.
dpb
dpb le 16 Avr 2014
Modifié(e) : dpb le 17 Avr 2014
Or, the other way would be to keep the one axes object but transform x>10 to log and set the ticks and labels manually.
In this case to plot on the same axis you would
plot(log10(x>10)+10,y(x>10))
to get the offset on the axis, of course.

Connectez-vous pour commenter.

Réponses (0)

Catégories

En savoir plus sur Log Plots dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by