![]() Even though the display specification may be greater than 200 DPI, OS X and/or Matlab must perform some intermediate size transformations. Retina displays don’t suffer as badly as one might think from the DPI mismatch. These capabilities are quite possible to implement, but this is a complicated solution to problem that was once easy to fix. Figure resolution may need to be changed when moving to different computer systems.Resized objects must be temporarily restored to their original size for printing, and new objects must be tracked whenever they are added.Child objects (axes, uicontrols, etc.) also must be resized if they are based on physical units.I started working on such a class, but the problem is more complicated than one might think: Some users may be willing to periodically print publication figures to externally verify sizing, but this breaks the interactive nature of Matlab figures.Ī potential work around is the creating of a new figure class that oversizes figures (as needed) to account for a particular display. Many users can (and will) ignore the display problem if they aren’t dealing with strict size requirements and text legibility isn’t too bad. Thankfully, printed graphic sizes are rendered correctly when a figure’s PaperPositionMode property is 'auto'. Display resolution is particularly tricky when it changes during a Matlab session, such as when computer is connector to projector/television or a laptop is connected to a docking station. To be fair, correct physical sizing is not an easy across the many platforms that Matlab runs on. I welcome input from users on other operating systems, particularly those with high-resolution displays. So far I have found no evidence this release is any more aware of pixel size than previous releases, but my experience is limited to non-Retina Macs. The change is part of the “DPI aware” nature of release R2015b. ![]() It does not appear as a formal bug, but technical support is aware of the problem. I reported the above issues to the Mathworks several months ago. Screen calibration deals with this problem, but this option is no longer available. A common complaint I get is that text and control labels is too small to easily read. Displaying accurately sized graphics is very difficult in R2015b, which is unfortunate given the many enhancements in this release.ĭevelopers who create graphical interfaces for other users should also care about this change. Figures are often made as small as possible to and densely packed to save journal space, and accurate sized display helps the author determine legibility. With a calibrated screen, figure appear exactly as they will when printed to a file (usually EPS or PDF). Scientific and engineering journals are extremly strict about figure widths. The loss of ScreenPixelsPerInch as an adjustable setting strongly affects anyone using Matlab for publication graphics. Matlab assumes that Macs use 72 DPI (96 DPI on Windows), so graphics appear at 65% of the request size. These examples were rendered on ~110 DPI display. ![]() The grid behind the figures was rendered at 8.5″ x 8.5″ inches on my display if your browser’s zoom level isn’t 100%, it may appear larger or smaller.Ī side effect of improper graphic sizing is that text is difficult to read - the uncalibrated axes labels are clearly smaller than 10 points. Differences between the two outputs are shown in the screenshot at the top of this post. Now renders differently in R2015b than does for a calibrated display in R2015a. Set ( gcf, 'MenuBar', 'none', 'ToolBar', 'none', 'DockControls', 'off', 'NumberTitle', 'off' ) Īxes ( 'FontUnits', 'points', 'FontSize', 10 ) Figure ( 'Units', 'inches', 'PaperPositionMode', 'auto', 'Position', )
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |