MATLAB Answers

MATLAB R2014b Graphics --> How to get thin lines (grid, curves, box,...)

14 views (last 30 days)
Samir on 15 Jan 2015
Edited: Debarupa Som on 20 Jul 2019
Hello, I started to use the new graphics (2014b) and I see quite some interesting things.
However, I am disappointed to see that one of the most interesting aspects of the MATLAB graphs is gone :( To be clear, I was very happy with the graphs having very thin lines (box, curves,...). It gave a very sophisticated look. Now, even when I try to force the thickness of the lines and the box to very low values, I still get an ugly thick box and lines :( The very thin grid lines I used to have are now very rough and thick... Unless I am doing something wrong ? Any solution for that ?
I raised the question in November 17th of last year without any answer so far:
Please look at the code below. Executed in 2014a or 2014b gives a huge difference in the precision and look of the graphs. Thanks a lot.
if true
% Example of code
plot(x,x.*x,'-o','Color', 'r','MarkerFaceColor',[1,0.69,0.39],'LineWidth',0.01);
set(gcf, 'Units', 'centimeters');
afFigurePosition = [0.1 18 10 7]; % [pos_x pos_y width_x width_y]
set(gcf, 'Position', afFigurePosition);
set(gcf, 'PaperPositionMode', 'auto');
grid on;
set(gcf, 'Renderer', 'painters');
print('-dmeta', ['-r' resol], '-painters', ['ExamplCurve_' resol '.emf']);
Md Zillur Rahman
Md Zillur Rahman on 15 Oct 2015
you can solve this issue by using
GridAlpha — Grid-line transparency 0.15 (default) | value in the range [0,1] Grid-line transparency, specified as a value in the range [0,1]. A value of 1 means opaque and a value of 0 means completely transparent.
Setting this property sets the associated mode property to manual.
Example: ax.GridAlpha = 0.5

Sign in to comment.

Answers (3)

Seth Kosowsky
Seth Kosowsky on 11 Feb 2016
I had a similar problem with gridlines, and I found the problem is that when matlab renders into meta, it renders the grid lines as lines, iff the gridalpha properties are = 1.0. If gridalpha values are < 1 (default), then it renders the gridlines as rectangle objects. These objects become thick lined things in, say, powerpoint when you 'ungroup' the object. So, for example for the grid lines, set(gca, 'gridalpha', 1) and set(gca, 'minorgridalpha', 1) solves it. (well it did for me). Good luck.
Samir on 24 Feb 2016
Hi Mike, Yes I did try this version. Unfortunately, the lines behave strange: the thickness and darkness of the lines is not uniform over the full graph (parts of the graph have thick and dark lines and other parts show thin to invisible lines). :(

Sign in to comment.

Saurabh Harsh
Saurabh Harsh on 13 Feb 2015
Axes have a property named GridLineStyle which can be modified to get desired grid line style. There is also the property LineWidth for Axes which controls Width of axes outline, tick marks and grid lines together. These properties and more can be found in the following doc page:
  1 Comment
Image Analyst
Image Analyst on 16 Feb 2015
Samir's "Answer" moved here:
*Hi, As you can see, I used (in my example given above) the "LineWidth" property and it does not help. Something has changed in 2014b that make the lines by default thick and does not allow to thin them down. :(*

Sign in to comment.

Alex on 31 Mar 2015
Have you tried changing the figure parameter GraphicsSmoothing?
Debarupa Som
Debarupa Som on 20 Jul 2019
I am having similar problems. Also while copying and pasting the figures in word, some of the grid lines are missing. Tried gridalpha, line width and graphic smoothing but it is not getting any better.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!

Translated by