how to modify the axes scale when we plot values in both y axis with same x axis line.

1 次查看(过去 30 天)
x1=xlsread('ERROR.xlsx') y1=xlsread('ROUND.xlsx') plot(x1); xlabel('data ratio'); ylabel('Percentage Error'); yyaxis right;
plot(y1); ylabel('Energy');
ERROR DATA 53.7578 31.3263 6.5007 2.3187 1.0973 0.9278 0.9654 0.7224 0.6327 0.549 0.4588 0.3607 0.3277 0.235 0.0671 0.1379 5.45E-02 7.50E-04 9.65E-07
ROUND DATA 282 299 305 324 341 360 378 394 413 481 496 550 569 728 794 804 1000 1000 1000 OUTPUT
how do i change in x axes,yaxes,yaxes right.In this particular example above I want to change the limit of x axes 0 to 1 with difference .1,y axxes 0 to 100 with difference 10,yaxes right 1000 to 100 with difference -50.
  5 个评论
Aquatris
Aquatris 2018-6-8
For that you need to specify the xData as well. Since you are plotting like "plot(y1)", x-axis represent the data number (data #1, data #2). This is the reason why the first data point is at x = 1, second one is x = 2 and so on.
If you have the xData, you need to plot using "plot(xData,y1)". So that when you set the x-axis to be between 0 and 1, there will be data there assuming xData is between 0 and 1.
To change the x-axis range, make this change in the code;
set(gca,'xLim',[0 1])
set(gca,'xTick',0:.1:1)

请先登录,再进行评论。

回答(1 个)

Mandeep  Singh
Mandeep Singh 2018-6-8
From my understanding of the question, you want to change the number of ticks and their corresponding labels in the plot. To achieve that, please follow the below steps which considers a random data set for plotting.
y = [282 299 305 324 341 360 378 394 413 481 496 550 569 728 794 804 1000 1000 1000]
plot(y)
xticks([0:2:20])
xticklabels([0:0.1:1])
Follow the same steps for changing the labels for both the y axes.

类别

Help CenterFile Exchange 中查找有关 Grid Lines, Tick Values, and Labels 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by