How to stop log axis shift

2 次查看(过去 30 天)
Hello,
I am trying to generate 5 different 3d waterfall plots (each representing a flow speed from 20m/s to 60m/s). One of the axes in each of the graphs represents frequency and is set to be logarithmic by using: 'set(gca, 'XScale', 'log');'
The frequency values within the 'waterfall' function are normalised by dividing by the respective flow speed.
Eg: for 20m/s, h = waterfall(F/20, blowingRates, DPWL20_filtered');
Since F starts at 0, I wasn't worried about the lower x limit, but I set the upper limit to max(F)/60 for all plots to ensure they all cover the same X range: xlim([0 max(F)/60])
When I try to plot these, I notice the frequency axes shift, despite enforcing xlim
Is there a better way to keep the axes the same for all plots?
Here are images for the plots so far:

采纳的回答

Tomoaki Takagi
Tomoaki Takagi 2024-7-1
You can't plot 0=10^(-inf) on a log scale.
The lower x limit must be a positive number.
For example, try xlim([0.1 max(F)/60]) or xlim([0.01 max(F)/60]).
Of course, 0.1=10^-1 and 0.01=10^-2.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Axis Labels 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by