How can i show only definite data values in bar plot?

X=1:7;
Y=[100 50 35 20 8 7 6];
bar(Y);
text(X,Y,num2str(Y','%0.2f'),'HorizontalAlignment','center','VerticalAlignment','bottom');
I am getting all the data values here in the bar plot. But i want to show the values only for first 3 (100, 50, 35). is it possible?
in X axes: showing all values
Y axes: bar data will be plotted for all values, but data will be shown only for first 3 values.

 Accepted Answer

X=1:7;
Y=[100 50 35 20 8 7 6];
idx = 1:3; % select data to plot
bar(X(idx), Y(idx));
text(X(idx),Y(idx),num2str(Y(idx)','%0.2f'),'HorizontalAlignment','center','VerticalAlignment','bottom');

3 Comments

Actually, forgot to add something in my quetion. I want to show all X axes data also.
in X axes: showing all values
Y axes: bar data will be plotted for all values, but data will be shown only for first 3 values.
like this figure:
X=1:7;
Y=[100 50 35 20 8 7 6];
idx = 1:3; % select data to plot
bar(X, Y);
text(X(idx),Y(idx),num2str(Y(idx)','%0.2f'),'HorizontalAlignment','center','VerticalAlignment','bottom');
thank you very much @Chunru. it was my expectation.

Sign in to comment.

More Answers (1)

X=1:3;
Y=[100 50 35]; % 20 8 7 6];
bar(Y);
text(X,Y,num2str(Y','%0.2f'),'HorizontalAlignment','center','VerticalAlignment','bottom');

1 Comment

actually not like that. i am aware of that code.
could you please check my previous comment ?
I want to plot like this:

Sign in to comment.

Asked:

on 24 Dec 2021

Commented:

on 24 Dec 2021

Community Treasure Hunt

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

Start Hunting!