How to plot high resolution?
43 views (last 30 days)
Show older comments
I would like to plot a histogram with 2048 bins. Is it possible plot and save it? pdf? retina display
3 Comments
Jan
on 14 Feb 2018
@Mr. M: Please insert this important information on top of your question: You are using a Mac with Retina display.
Answers (2)
Akira Agata
on 23 Oct 2017
How about adjusting a resolution by setting 'Position' property of figure. Here is an example.
% Sample data
mu = 0.0;
sigma = 1.0;
x = normrnd(mu,sigma,100000,1);
% Plot histogram with 2048 bins in full HD (1920x1080) resolution
figure('Position',[0 0 1920 1080])
histogram(x,'NumBins',2048)
2 Comments
Akira Agata
on 22 Feb 2018
OK. Then, how about saving your histogram as a high-resolution image?
mu = 0.0;
sigma = 1.0;
x = normrnd(mu,sigma,100000,1);
dpi = 150; % Resolution
sz = [0 0 2880 1800]; % Image size in pixels
% Plot histogram with 2048 bins
% and save as an .tiff image file
% with 2880x1800 pixel and 150 dpi
figure(...
'PaperUnits','inches',...
'PaperPosition', sz/dpi,...
'PaperPositionMode','manual',...
'Visible', 'off')
histogram(x,'NumBins',2048)
print('-r150','-dtiff','histogram.tiff');
Mr M.
on 14 Feb 2018
5 Comments
Walter Roberson
on 21 Feb 2018
The reason that set(gcf,'unit','pixel','position',[0 0 1600 1200]) fills the screen is that for Retina displays, MATLAB arbitrarily declares that a "pixel" is to be 1/72 of an inch (which just happens to be the same as a "point") -- as described at https://www.mathworks.com/help/matlab/creating_guis/dpi-aware-behavior-in-matlab.html#buyrn8d
"Units Property
When you set the Units property of a graphics or UI object to 'pixels', the size of each pixel is now device-independent on Windows and Macintosh systems:
- On Windows systems, 1 pixel = 1/96 inch.
- On Macintosh systems, 1 pixel = 1/72 inch."
The full hardware resolution is still there and you can still put up images at the full hardware resolution: you just have to be careful about specifying sizes in units of Pixel. For example, you could:
set(gcf,'unit','norm','position',[0 0 1 1])
See Also
Categories
Find more on Histograms 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!