Clear Filters
Clear Filters

Title position below the x axis

381 views (last 30 days)
How can I change the position of a title from top of the figure to the below of x axis using code(automatically) on a subplot?

Accepted Answer

Shantanu Gontia
Shantanu Gontia on 30 Jun 2018
Edited: Shantanu Gontia on 30 Jun 2018
To change the position of the title, you can modify the Position property of the Title in the axes. You can modify the Position property of the Title object to get the desired results. Although, I would recommend first setting the Units property to normalized. In that way you can give Position values relative to the axes.
The Position argument requires 3 inputs, namely, the x,y and z coordinates. In normalized units, 0,0,0 is the left-bottom corner and 1,1,1 is the right-top corner of the axes. You can provide negative value to the y-coordinate in order to push the title below the axes.
plot([1 2 3], [1 2 3]); % Random plot
t = title('Random Plot', 'Units', 'normalized', 'Position', [0.5, -0.1, 0]); % Set Title with correct Position
Although, the example I have given is with the plot, the same applies to subplots as well.
  1 Comment
Mahdi Torabi
Mahdi Torabi on 30 Jun 2018
Thank you for your reply. It was very nice and simple way.

Sign in to comment.

More Answers (1)

jonas
jonas on 30 Jun 2018
Edited: jonas on 30 Jun 2018
Here are two options that may work for you:
%alter vertical position of title
figure;hold on
subplot(2,1,1)
t=title('Title1')
xlabel('xlabel')
set(t,'position',get(t,'position')-[0 1.4 0])
%add title as part of the xlabel
subplot(2,1,2)
xlabel(['xlabel',newline,'\bf Title2'])
This previous question gives some similar options ( link )
  1 Comment
Mahdi Torabi
Mahdi Torabi on 30 Jun 2018
Thank you very much for your reply. Both methods work well.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!