I'm giving my first slide show and have several Manipulate blocks in the show. I would like to initialize all of them prior to starting the slides, hiding the code showing only the graphics. However when I select Evaluation/Initialization cells, all the code is displayed as well as the graphics. Can someone help me set up my show so that only the graphics is shown when I initialize the notebook?
This seems to work: Select the code cells for these manipulates, go to Cell > Cell Properties, set Initilization and unset Open.
If your code is contained in a single cell, grouped together with the graphic output, you can hide the code by double-clicking on the graphics cell bracket to the right.
Thanks guys. If I unset Open then I no longer have the graphics cell bracket to toggle the code display on or off and need to go the Cell>Cell Properties option to display it which is I think a bit cumbersome in a presentation if I want to show the code to the audience. And if I leave it open and toggle the graphics cell bracket to show only the output, then when I start the notebook, all the cells are open again and ideally I would like to start up the notebook with all the (Manipulate) code hidden at first and only display the code if needed. I'm not sure which works best for a slide show since this is the first one I'm giving. Got till Oct. to figure out a best way.
Are you using SaveDefinitions->True in the manipulates? If so, there should be no need for initialization and you can simply toggle the manipulate cells so that code is not showing (and double click when you want to open the code part).
Thanks. That's a big improvement; don't have to Evaluate->Initialize anymore. Just have to load it from the flash drive and it's ready and all the Manipulate code is hidden at startup. Perfect! Guess I'm ready then.
I also use SaveDefinitions to make manipulates self-contained. However, I have been bitten by a problem that took me some time to understand. SaveDefinitions saves also the values of global variables that are needed, in my case kilobytes of raw data. When you display the Manipulate output, the saved values will overwrite whatever newer values the global variables have at the time. This caused me inconsistencies and errors downstream. One workaround I have found is to erase the output, reload the data and regenerate the Manipulate to update all saved values. Is there a better way?