How to define the upper limit of y-scale in a log plot

29 ビュー (過去 30 日間)
Bernardo Knackfuss
Bernardo Knackfuss 2015 年 9 月 4 日
コメント済み: Voss 2024 年 9 月 22 日
Hello, i need to plot some graphs of some curves in logarithmic scale on the y-axis and the y-scale must range from 0 to 10^-5. I want to superpose the curves on the same image, thats why the scale must be the same for all plots. I'm currently using semilogy to get a log scale, but the range is completely messed up. I've tryed using
set(gca,'yscale','log')
but again, i don't have control on the upper limits of the y-scale. What can i use to resolve this? Thanks.

採用された回答

dpb
dpb 2015 年 9 月 4 日
You don't give any data nor attach a plot to see the issue specifically, but you set fixed axes limits on log axes the same way as you do for linear ones--use ylim (or set for low-level control or in conjunction with other properties on the axes in one call).
Simple example--
y=[10*rand(10,1), 1E5*rand(10,1)];
hAx=semilogy(y);
ylim([1,1E6])
ylim([.5,4E5])
Salt to suit for your particular case...

その他の回答 (3 件)

Heyang Qin
Heyang Qin 2019 年 1 月 12 日
The problem of cannot set axis range such as ylim or xlim in log scale is becaue you cannot set log value to 0. Any value other than 0 will work.
  1 件のコメント
dpb
dpb 2024 年 9 月 22 日
"...you cannot set log value to 0."
You can set the x|ylim property to include zero; MATLAB will silently do the equivalent of the 'tight' limitmethod option for the selected axis. The displayed lower limit will become the first/lowest magnitude value in the X|YData array, but xlim will return the actual set values from the input vector including '0' if specified. log axes are coded to just ignore 0 and negative data; you get a warning if you plot with such, but the positive values are plotted and then the limits act like any other numeric axes programmatically, with just the above nuances about what is actually displayed.

サインインしてコメントする。


Meirbek Mussatayev
Meirbek Mussatayev 2022 年 11 月 19 日
Hi,
Please try this code:
set(gca, 'YScale', 'log')
ylim([0 1e-5])

Roland
Roland 2024 年 9 月 22 日
can xlim be 0.3
  3 件のコメント
Roland
Roland 2024 年 9 月 22 日
do the two numbers need to be powers of 10?
Voss
Voss 2024 年 9 月 22 日
No

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeAnnotations についてさらに検索

製品

Community Treasure Hunt

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

Start Hunting!

Translated by