How to stop log axis shift
조회 수: 20 (최근 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:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1725191/image.png)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1725196/image.png)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1725201/image.png)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1725206/image.png)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1725211/image.png)
댓글 수: 0
채택된 답변
Tomoaki Takagi
2024년 7월 1일 10:39
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 Center 및 File Exchange에서 Axis Labels에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!