Date: Tue, 12 Jun 2012 16:47:58 +0000
Reply-To: "Sadler, John" <John.Sadler@ARS.USDA.GOV>
Sender: "SAS(r) Discussion" <SAS-L@LISTSERV.UGA.EDU>
From: "Sadler, John" <John.Sadler@ARS.USDA.GOV>
Subject: Animated GIF using GREPLAY?
Content-Type: text/plain; charset="us-ascii"
For retrospective QA, web content, and educational purposes about a dynamic event I have a need for a multiple visualizations in multiple panels. Each panel needs to have time-based content easily done (apparently) with animated GIFs, all of the same duration with the same time course. However, I need to synchronize the several panels and I don't yet see the most efficient way to accomplish that.
I am in test/debug/pilot mode now. I have generated static versions of the several panels, which use GPLOT and annotate datasets at the PROC and PLOT statement level. Based on reading the documentation of the ANIMGIF device, there would appear to be no real problem if I want to create separate animated GIFs.
It would be possible to do all of this under coded program control in GANNO with one very complex annotate dataset, but I hope it doesn't come down to that.
I have in the past created multiple plots using origin/length controls and replayed them on the same template but do not see how to accomplish the paneling that way and deliver the pages into the animated GIF.
If I create different GRSEGs with the multiple sequences of GIF panels in a consistent name and numbering structure, I could visualize either a macro-loop method or writing SAS code under program control and %include-ing it to invoke the populating of the animated GIF by name, but it would be tedious and probably not automatable across multiple animated GIFs. I could probably use some advice on writing a macro to detect the number of panels in the GRSEG space if it turns out this is the way to go. Otherwise, it would take manual intervention or leveraging foreknowledge of the number of steps in the animation.
Does anyone see a way to automatically generate the animated GIF using the BY statement so that the paneling is internal to the BY processing?
Others have suggested building the several separate animated GIFs and displaying them on a screen under other program control, such as with VB or other tool. If the suite of displays could be accomplished in a fraction of my step-delay time, that might work. Yet another has suggested there might be tools that could synchronize a multi-animated-GIF display. I would rather accomplish the whole task under SAS control - all the data are currently resident in SAS, and I'd rather avoid manual steps.
Thank you in advance.
This electronic message contains information generated by the USDA solely for the intended recipients. Any unauthorized interception of this message or the use or disclosure of the information it contains may violate the law and subject the violator to civil or criminal penalties. If you believe you have received this message in error, please notify the sender and delete the email immediately.