Representing certain range of X axis using a single tick in MATLAB plot
3 views (last 30 days)
Show older comments
Shubhrajit Bhattacharjee
on 29 Mar 2020
Commented: Shubhrajit Bhattacharjee
on 29 Mar 2020
I have the following data:
X = [1,2,3,4,5,6,7];
Y = [10,10,10,10,20,30,40];
bar(X,Y)
For X axis value until 4, the Y axis value is the same which is 10. I want to represent the barplot where the first X axis tick will show 1:4 and Y axis value will show 10. For the other X axis values from 5 to 7 will be represented each using a single tick as usual, for example X axis will be 1:4 5 6 7, so 4 ticks in total in X axis. Please let me know how to do that.
0 Comments
Accepted Answer
Adam Danz
on 29 Mar 2020
Edited: Adam Danz
on 29 Mar 2020
Two options
X = [1,2,3,4,5,6,7];
Y = [10,10,10,10,20,30,40];
xIdx = [1,5,6,7];
bar(X(xIdx), Y(xIdx))
ax = gca();
ax.XTick = xIdx;
ax.XTickLabel{1} = '1:4';
xIdx = [1,5,6,7];
bar(Y(xIdx))
ax = gca();
ax.XTick = 1:numel(xIdx);
ax.XTickLabel = {'1:4','5','6','7'};
3 Comments
More Answers (0)
See Also
Categories
Find more on 2-D and 3-D Plots in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!