Take the 2-minute tour ×
Mathematica Stack Exchange is a question and answer site for users of Mathematica. It's 100% free, no registration required.

The Evaluation Preferences in Mathematica specify a maximum output size of 1048576 Bytes before truncation occurs. That makes a lot of sense when thinking about large lists of data, but is causes trouble when displaying large Graphics.

Here is an example. It is produced using version 9.0.1.0 on a MacBook Pro with Retina display running OS X 10.7.5. I'm importing a PDF file with a large polygon count.

Export["t1.pdf", Plot3D[Sin[x + y^2], {x, -3, 3}, {y, -2, 2}]];
First@Import["t1.pdf"]

large output

This truncation warning does nothing to save space in the notebook, and the full output is in fact generated. So it would be nice if one could automatically suppress the truncation warning which serves no purpose here.

I don't think it's a valid solution to just increase the truncation Byte limit above its default value, because that would affect regular data output as well, and I don't want to increase the limit for that case.

Normally I would of course avoid exporting and importing PDF from 3D graphics, but it can't always be avoided if you have an external PDF file you'd like to display in the notebook.

share|improve this question

1 Answer 1

up vote 4 down vote accepted

This was the best I could do on short notice:

Export[FileNameJoin[{$HomeDirectory, "Desktop", "t1.pdf"}], 
  Plot3D[Sin[x + y^2], {x, -3, 3}, {y, -2, 2}]

t1 = First@Import[FileNameJoin[{$HomeDirectory, "Desktop", "t1.pdf"}]];

Print[t1]

It's not elegant, but it does suppress the truncation warning.

share|improve this answer
    
Good work-around. –  Jens Mar 2 '13 at 18:45
    
@Jens. I was surprised to find that Block[{$OutputSizeLimit = 10^8}, t1] did not work, but a simple Print did. I wonder why Print is immune to output truncation? –  m_goldberg Mar 2 '13 at 18:55
2  
@m_goldberg I don't think it's that surprising. Blockjust returns t1, which is then evaluated by the front end, where $OutputSizeLimit has the old value. –  Ajasja Mar 2 '13 at 20:23
    
@Ajasja. Of course. I wasn't thinking clearly. –  m_goldberg Mar 3 '13 at 1:43

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.