Why does matlab scale x-axis automatically
3 ビュー (過去 30 日間)
古いコメントを表示
Hello,
Why does Matlab scale x axis automatically when it is a decimal number?
For example,
plot(sin([0:0.01:2*pi]))

This graph is not what I asked to plot! The x-axis starts from 0 to 700, when it should be 0 to 7.
At least the x-axis should have shown that it is *10^-2, but it doesn't.
This is misleading, sin(100) isn't 0.8415!
why does MatLab scale all decimal places automatically like this?
And how do I make Matlab to show correct x-axis?
1 件のコメント
採用された回答
Adam
2018 年 11 月 2 日
編集済み: Adam
2018 年 11 月 2 日
plot( x, y )
plots the values you want on the x axis.
plot( y )
as you have done just defaults to using indices along the x axis so there are 600 and whatever elements in your array and you get that many elements in x in your plot.
doc plot
explains the syntax.
x = 0:0.01:2*pi;
y = sin( x );
plot(x, y)
should work fine by simply telling it what you want to plot as x and what you want to plot as y.
1 件のコメント
Steven Lord
2018 年 11 月 2 日
Adam is correct. There's no scaling of X coordinates taking place. The specific syntax in the Description section of the plot documentation page that covers this case is:
plot(Y) creates a 2-D line plot of the data in Y versus the index of each value.
- If Y is a vector, then the x-axis scale ranges from 1 to length(Y).
Call plot with two inputs, as Adam showed.
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Annotations についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!