Bug in saving .fig (but not .png or .pdf) from when specifiying YAxis.Exponent as -6
In my livescript (MATLAB R2023b), I programatically save some of my plots via saveas(). I’m currently saving as a .pdf, a .png, and a .fig.
When I first specify that that the plot should have a YAxis exponent of -6 (it defaults to -5), my plots look as expected in the produced/displayed MATLAB .fig, and in the saved .pdf and .png. BUT…when I open the saved .fig, it shows an exponent of 10^2147483647. Not 10^-6 as everything else does.
I’ve been able to reproduce this in a .m file as well, so it doesn’t seem to be related to the .mlx.
This is how I’m saving the plots:
set(gcf, ‘visible’, ‘on’); % have to do this bc livescripts sets off, but then the figs open as invisible later
saveas(gcf,plotFullFilename,’fig’)
saveas(gcf,plotFullFilename,’png’)
exportgraphics(gcf,allPlotsFilename,’append’,true)
This is how I set the exponent:
axA.YAxis.Exponent = -6;
axB.YAxis.Exponent = -6;
If I comment out the exponent code and let it default to a yaxis exponent to -5, then the .fig saves with an exponent of -5.
But I don’t want a y-axis exponent of -5. I want it in engineering notation, e.g. an exponent of -6. This looks like a bug to me. Any ideas?In my livescript (MATLAB R2023b), I programatically save some of my plots via saveas(). I’m currently saving as a .pdf, a .png, and a .fig.
When I first specify that that the plot should have a YAxis exponent of -6 (it defaults to -5), my plots look as expected in the produced/displayed MATLAB .fig, and in the saved .pdf and .png. BUT…when I open the saved .fig, it shows an exponent of 10^2147483647. Not 10^-6 as everything else does.
I’ve been able to reproduce this in a .m file as well, so it doesn’t seem to be related to the .mlx.
This is how I’m saving the plots:
set(gcf, ‘visible’, ‘on’); % have to do this bc livescripts sets off, but then the figs open as invisible later
saveas(gcf,plotFullFilename,’fig’)
saveas(gcf,plotFullFilename,’png’)
exportgraphics(gcf,allPlotsFilename,’append’,true)
This is how I set the exponent:
axA.YAxis.Exponent = -6;
axB.YAxis.Exponent = -6;
If I comment out the exponent code and let it default to a yaxis exponent to -5, then the .fig saves with an exponent of -5.
But I don’t want a y-axis exponent of -5. I want it in engineering notation, e.g. an exponent of -6. This looks like a bug to me. Any ideas? In my livescript (MATLAB R2023b), I programatically save some of my plots via saveas(). I’m currently saving as a .pdf, a .png, and a .fig.
When I first specify that that the plot should have a YAxis exponent of -6 (it defaults to -5), my plots look as expected in the produced/displayed MATLAB .fig, and in the saved .pdf and .png. BUT…when I open the saved .fig, it shows an exponent of 10^2147483647. Not 10^-6 as everything else does.
I’ve been able to reproduce this in a .m file as well, so it doesn’t seem to be related to the .mlx.
This is how I’m saving the plots:
set(gcf, ‘visible’, ‘on’); % have to do this bc livescripts sets off, but then the figs open as invisible later
saveas(gcf,plotFullFilename,’fig’)
saveas(gcf,plotFullFilename,’png’)
exportgraphics(gcf,allPlotsFilename,’append’,true)
This is how I set the exponent:
axA.YAxis.Exponent = -6;
axB.YAxis.Exponent = -6;
If I comment out the exponent code and let it default to a yaxis exponent to -5, then the .fig saves with an exponent of -5.
But I don’t want a y-axis exponent of -5. I want it in engineering notation, e.g. an exponent of -6. This looks like a bug to me. Any ideas? saveas, save figure, livescript, bug, exponent MATLAB Answers — New Questions