I've got a layout where I've put 4 graphs in a 2x2 grid. The layout looks exactly how I want it to. When I save as a pdf (either through Save Graphics or print) or save as a jpg, png, etc. some of the axes are changing in thickness, though in Igor they are the same thickness. I'm not actually sure how to get the layout exported as I set it up, except taking a screenshot. Any advice?
MAYBE something is set to "Auto" and causes trouble.
I know from tickmarks that Igor recreates graphs for saving/printing and sometimes changes tiny bits and pieces -- maybe this also applies here?
(http://www.igorexchange.com/node/6460)
Maybe you could create a demo experiment that you could share along a version number?
From the link you posted, I would guess it's something like this (re-rendering of axes that are on the verge between two thicknesses). I'm confused why this is happening while saving a layout, though. I simply want a pixel by pixel file of the layout I've already created.
I would like to post an example experiment - I'd prefer not to make the data I'm using public right now though, so I'd have to build up a new experiment from the ground and hope it generates the same error.
I'll post a screenshot of the layout and a jpeg file, though.
When I save as a pdf (either through Save Graphics or print) or save as a jpg, png, etc. some of the axes are changing in thickness
It may be that the bottom axis of the "c" plot is shifting slightly upward, making it slightly above the top axis of the "d" plot.
Try Layout->Make Plot Areas Uniform, and set the margins and plot area of all graphs to fixed sizes. Click the Help button in the Make Plot Areas Uniform dialog for details.
If this does not solve the problem, we will need a reproducible example. We also need to know what OS you are running on.
I'm basically certain this is what's happening (the plots shifting).
The technique of Make Plot Areas Uniform may be viable, but there are a lot of moving parts to getting these 4 plots to align. I am looking for a technique within Igor that will allow me to save the layout as it is.
It has to do with the axis standoff and rendering layouts at higher than screen-resolution. When no standoff is selected (axis standoff: off) the layout is exported correctly. In a 2x2 layout this means all neighboring graphs have to have axis standoff to off and be properly adjusted to have overlapping axes.
- With axis-standoff:on, you can position the graphs in the layout to be just adjacent to each other (thick-line, mutual border resulting from two adjacent axes), knowing that the graphs will shift in the respective direction.
- You can use a vector editor, remove the line. (I would do that)
Interestingly, where is the problem coming from?
I did little experimentation and I have narrowed it down to SavePICT.
Basically exporting to a raster (i.e. PNG) with resolution 72dpi (x1), 144dpi (x2), namely:
SavePICT/E=-5/B=72 SavePICT/E=-5/B=144
results in appropriate image (with axis standoff: on). With (axis standoff:off) exporting at all resolutions produces good raster renderings. At 144dpi, there is a shift but not too critical.
If the resolution is increased (x4 and up) (SavePICT/E=-5/B=288) the problematic rendering appears.
I can only surmise that saving to PDF (SavePICT/E=-8/EF=1) goes through the resolution code (idk why) and renders the incorrect layout.
Ultimately, I think it is a bug in Igor rendering graph layouts with axis standoff:on and saving at resolution greater than screensize.
This is a really thorough answer and it's given me insight to the problem, but the issue is still creating problems for me in a general sense. Igor is very good at plotting within Igor. This exportation issue though is causing a significant amount of time to adjust. Especially when I am making ~10 versions of a single plot and I have to correct each one manually.
If you have a way to reproduce the problem, it's best to send the example experiment along with your OS, Igor version, and Igor serial number to support@wavemetrics.com. It's much easier for us to keep track of bugs (and more likely they'll be fixed) if they all come in to one place.
We're no longer changing Igor 6, so I suggest you try Igor 7 to see if the problem still exists. If so, we might be able to address the problem in a future release of Igor 7.
I know from tickmarks that Igor recreates graphs for saving/printing and sometimes changes tiny bits and pieces -- maybe this also applies here?
(http://www.igorexchange.com/node/6460)
Maybe you could create a demo experiment that you could share along a version number?
HJ
February 1, 2017 at 10:22 am - Permalink
From the link you posted, I would guess it's something like this (re-rendering of axes that are on the verge between two thicknesses). I'm confused why this is happening while saving a layout, though. I simply want a pixel by pixel file of the layout I've already created.
I would like to post an example experiment - I'd prefer not to make the data I'm using public right now though, so I'd have to build up a new experiment from the ground and hope it generates the same error.
I'll post a screenshot of the layout and a jpeg file, though.
February 1, 2017 at 11:54 am - Permalink
It may be that the bottom axis of the "c" plot is shifting slightly upward, making it slightly above the top axis of the "d" plot.
Try Layout->Make Plot Areas Uniform, and set the margins and plot area of all graphs to fixed sizes. Click the Help button in the Make Plot Areas Uniform dialog for details.
If this does not solve the problem, we will need a reproducible example. We also need to know what OS you are running on.
February 1, 2017 at 12:38 pm - Permalink
The technique of Make Plot Areas Uniform may be viable, but there are a lot of moving parts to getting these 4 plots to align. I am looking for a technique within Igor that will allow me to save the layout as it is.
February 1, 2017 at 01:38 pm - Permalink
February 2, 2017 at 12:34 am - Permalink
February 2, 2017 at 08:10 am - Permalink
It has to do with the axis standoff and rendering layouts at higher than screen-resolution. When no standoff is selected (axis standoff: off) the layout is exported correctly. In a 2x2 layout this means all neighboring graphs have to have axis standoff to off and be properly adjusted to have overlapping axes.
- With axis-standoff:on, you can position the graphs in the layout to be just adjacent to each other (thick-line, mutual border resulting from two adjacent axes), knowing that the graphs will shift in the respective direction.
- You can use a vector editor, remove the line. (I would do that)
Interestingly, where is the problem coming from?
I did little experimentation and I have narrowed it down to
SavePICT
.Basically exporting to a raster (i.e. PNG) with resolution 72dpi (x1), 144dpi (x2), namely:
SavePICT/E=-5/B=144
results in appropriate image (with axis standoff: on). With (axis standoff:off) exporting at all resolutions produces good raster renderings. At 144dpi, there is a shift but not too critical.
If the resolution is increased (x4 and up) (
SavePICT/E=-5/B=288
) the problematic rendering appears.I can only surmise that saving to PDF (
SavePICT/E=-8/EF=1
) goes through the resolution code (idk why) and renders the incorrect layout.Ultimately, I think it is a bug in Igor rendering graph layouts with axis standoff:on and saving at resolution greater than screensize.
February 3, 2017 at 02:38 am - Permalink
February 8, 2017 at 08:48 am - Permalink
We're no longer changing Igor 6, so I suggest you try Igor 7 to see if the problem still exists. If so, we might be able to address the problem in a future release of Igor 7.
February 9, 2017 at 06:28 am - Permalink