Problem with semilog/loglog command.Kindly help.

1 view (last 30 days)
Hi everyone, I am trying to create a 3D plot using mesh command.Out of the 3axes only one is on a semilog/log scale while the other two are usual linear scales.Mesh command requires the vectors to have same dimensions whereas semilog command or even loglog command for that matter is giving me a scalar value with unity dimension so I cannot use this command with mesh command.Can anyone suggest me some wayout?Is there any other command for plotting a row matrix in log/semilog scale?

Accepted Answer

Walter Roberson
Walter Roberson on 18 Oct 2013
Create your mesh with linear scales. Then
set(gca, 'ZScale', 'log'); %use XScale or YScale if appropriate
Note: OpenGL plots cannot have log scales, so if you need both transparency and log plots, you will have problems.
  2 Comments
Asawari
Asawari on 18 Oct 2013
This helped.Thank you.But my curve has gone all topsy turvy.The mesh command creates a 2D mesh or a square matrix first and then adds the 3rd variable of same dimension to create a curve. X and Y axes have some origin from where they start.If I want to design a curve using mesh only but the origin starting from Y-Z axis then what should I do?Rephrasing this other way, how should I reverse my X and Y axes Keeping the Z axis intact so that i might get my curve back in form?
Walter Roberson
Walter Roberson on 18 Oct 2013
I suspect I am missing something? Why not call mesh(Y,X,Z) in that case?

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!