Data visualization with SAS programming

WARNING: Insufficient memory to display image in graph.

Reply
Trusted Advisor
Posts: 1,137

WARNING: Insufficient memory to display image in graph.

Dear Experts,

 

I am working on a graph by subject. There are 100+ subjects and for each subject I need to produce the graph. So I get 100+ pages one for each subject. What is happening is I get the graphs for upto 89 pages I mean for 89 subjects and after this I get a warning as mentioned in subject line and no subject graph is produced after this. Could you please let me know the reason for this warning and how to overcome.

 

I am working on sas9.4.

 

 

Thanks,
Jag
Super User
Posts: 11,118

Re: WARNING: Insufficient memory to display image in graph.

[ Edited ]

It will help to show us how you are generating the graphs (code), any ods graphics or goptions you are using.

Trusted Advisor
Posts: 1,137

Re: WARNING: Insufficient memory to display image in graph.

To give more details, the warning is coming from the proc greplay procedure as below and the warning is coming after the 89 graph as shown below

 

goptions gaccess=gsasfile;
filename gsasfile "~path/sample.PDF";
proc greplay tc=work._TEMPLATES_cat4tplts nofs igout=work._TEMPLATES_final
gout=work._TEMPLATES_repout template=reptools ;
NOTE: Building list of graphs from the catalog.

NOTE: Enter greplay commands or statements.
treplay 2:hf000001 4:g1000001 ;
treplay 2:hf000002 4:g1000002 ;
treplay 2:hf000003 4:g1000003 ;
treplay 2:hf000004 4:g1000004 ;
treplay 2:hf000005 4:g1000005 ;
treplay 2:hf000006 4:g1000006 ;
treplay 2:hf000007 4:g1000007 ;
treplay 2:hf000008 4:g1000008 ;
treplay 2:hf000009 4:g1000009 ;
treplay 2:hf000010 4:g1000010 ;
treplay 2:hf000011 4:g1000011 ;
treplay 2:hf000012 4:g1000012 ;
treplay 2:hf000013 4:g1000013 ;
treplay 2:hf000014 4:g1000014 ;
treplay 2:hf000015 4:g1000015 ;
treplay 2:hf000016 4:g1000016 ;
treplay 2:hf000017 4:g1000017 ;
treplay 2:hf000018 4:g1000018 ;
treplay 2:hf000019 4:g1000019 ;
treplay 2:hf000020 4:g1000020 ;
treplay 2:hf000021 4:g1000021 ;
treplay 2:hf000022 4:g1000022 ;
treplay 2:hf000023 4:g1000023 ;
treplay 2:hf000024 4:g1000024 ;
treplay 2:hf000025 4:g1000025 ;
treplay 2:hf000026 4:g1000026 ;
treplay 2:hf000027 4:g1000027 ;
treplay 2:hf000028 4:g1000028 ;
treplay 2:hf000029 4:g1000029 ;
treplay 2:hf000030 4:g1000030 ;
treplay 2:hf000031 4:g1000031 ;
treplay 2:hf000032 4:g1000032 ;
treplay 2:hf000033 4:g1000033 ;
treplay 2:hf000034 4:g1000034 ;
treplay 2:hf000035 4:g1000035 ;
treplay 2:hf000036 4:g1000036 ;
treplay 2:hf000037 4:g1000037 ;
treplay 2:hf000038 4:g1000038 ;
treplay 2:hf000039 4:g1000039 ;
treplay 2:hf000040 4:g1000040 ;
treplay 2:hf000041 4:g1000041 ;
treplay 2:hf000042 4:g1000042 ;
treplay 2:hf000043 4:g1000043 ;
treplay 2:hf000044 4:g1000044 ;
treplay 2:hf000045 4:g1000045 ;
treplay 2:hf000046 4:g1000046 ;
treplay 2:hf000047 4:g1000047 ;
treplay 2:hf000048 4:g1000048 ;
treplay 2:hf000049 4:g1000049 ;
treplay 2:hf000050 4:g1000050 ;
treplay 2:hf000051 4:g1000051 ;
treplay 2:hf000052 4:g1000052 ;
treplay 2:hf000053 4:g1000053 ;
treplay 2:hf000054 4:g1000054 ;
treplay 2:hf000055 4:g1000055 ;
treplay 2:hf000056 4:g1000056 ;
treplay 2:hf000057 4:g1000057 ;
treplay 2:hf000058 4:g1000058 ;
treplay 2:hf000059 4:g1000059 ;
treplay 2:hf000060 4:g1000060 ;
treplay 2:hf000061 4:g1000061 ;
treplay 2:hf000062 4:g1000062 ;
treplay 2:hf000063 4:g1000063 ;
treplay 2:hf000064 4:g1000064 ;
treplay 2:hf000065 4:g1000065 ;
treplay 2:hf000066 4:g1000066 ;
treplay 2:hf000067 4:g1000067 ;
treplay 2:hf000068 4:g1000068 ;
treplay 2:hf000069 4:g1000069 ;
treplay 2:hf000070 4:g1000070 ;
treplay 2:hf000071 4:g1000071 ;
treplay 2:hf000072 4:g1000072 ;
treplay 2:hf000073 4:g1000073 ;
treplay 2:hf000074 4:g1000074 ;
treplay 2:hf000075 4:g1000075 ;
treplay 2:hf000076 4:g1000076 ;
treplay 2:hf000077 4:g1000077 ;
treplay 2:hf000078 4:g1000078 ;
treplay 2:hf000079 4:g1000079 ;
treplay 2:hf000080 4:g1000080 ;
treplay 2:hf000081 4:g1000081 ;
treplay 2:hf000082 4:g1000082 ;
treplay 2:hf000083 4:g1000083 ;
treplay 2:hf000084 4:g1000084 ;
treplay 2:hf000085 4:g1000085 ;
treplay 2:hf000086 4:g1000086 ;
treplay 2:hf000087 4:g1000087 ;
treplay 2:hf000088 4:g1000088 ;
treplay 2:hf000089 4:g1000089 ;
WARNING: Insufficient memory to display image in graph.
treplay 2:hf000090 4:g1000090 ;

ERROR: Unable to read image WORK._TEMPLATES_REPOUT.IB2QJ766
treplay 2:hf000096 4:g1000096 ;
ERROR: Unable to read image WORK._TEMPLATES_REPOUT.IB2QJ769
treplay 2:hf000097 4:g1000097 ;
ERROR: Unable to read image WORK._TEMPLATES_REPOUT.IB2QJ76C
treplay 2:hf000098 4:g1000098 ;
ERROR: Unable to read image WORK._TEMPLATES_REPOUT.IB2QJ76F
treplay 2:hf000099 4:g1000099 ;
ERROR: Unable to read image WORK._TEMPLATES_REPOUT.IB2QJ76I
treplay 2:hf000100 4:g1000100 ;
ERROR: Unable to read image WORK._TEMPLATES_REPOUT.IB2QJ76L
treplay 2:hf000101 4:g1000101 ;
ERROR: Unable to read image WORK._TEMPLATES_REPOUT.IB2QJ76O
treplay 2:hf000102 4:g1000102 ;
ERROR: Unable to read image WORK._TEMPLATES_REPOUT.IB2QJ76R
treplay 2:hf000103 4:g1000103 ;
ERROR: Unable to read image WORK._TEMPLATES_REPOUT.IB2QJ76U
run;
quit;

Thanks,
Jag
Super User
Posts: 11,118

Re: WARNING: Insufficient memory to display image in graph.

If you have the HTML destination open you might close that and only have ODS LIsting open.

I think the procedure may be trying to display the combined images and run out of memory to display that many images in the html viewer.

 

You may want to investigate ODS PDF Layout options or perhaps Proc Document if that doesn't help.

 

SAS Employee
Posts: 980

Re: WARNING: Insufficient memory to display image in graph.

When you run SAS, there is a default memory size that it limits you to (maybe something like 2GB ... it depends). Perhaps the default memory size is limiting you in this situation. You can over-ride the default in a couple of ways. I typically run SAS from the command line (in both Unix and Windows), and therefore I like using the -memsize command line option.

 

For example ...

 

sas.exe -memsize 0

 

A value of zero tells SAS to use as much memory as it needs/wants (and then you might be limited by other things, such as the maximum amount of memory a process can have based on your Unix kernel, etc). Therefore zero is a bit 'dangerous' because your SAS session could potentially hog all the available memory on your computer (which might not be very polite on a multi-user system). So use zero with caution ... or maybe specify a lower value like "-memsize 3g".

 

I'd be interested to hear whether or not this helps, in the situation/problem you're running into! Smiley Happy

 

Ask a Question
Discussion stats
  • 4 replies
  • 157 views
  • 0 likes
  • 3 in conversation