Re: Why don't my plots appear? My 5.2 code no longer works correctly in 6.0
- To: mathgroup at smc.vnet.net
- Subject: [mg89370] Re: Why don't my plots appear? My 5.2 code no longer works correctly in 6.0
- From: Bill Rowe <readnews at sbcglobal.net>
- Date: Sat, 7 Jun 2008 02:59:38 -0400 (EDT)
On 6/6/08 at 6:44 AM, cbrummitt at wisc.edu (Charlie Brummitt) wrote: >Hello, I am running into difficulties with Plot. Some code of mine >that worked in 5.2 no longer works correctly in 6.0.2.0. >Specifically, no plots appear whenever Plot (or Plot3D or >DensityPlot or ListPlot) is called within a function that I have >defined. >Here is a closely related question: What does the red semicolon ";" >mean at the end of "Plot[ ... ];"? Why is it red? In 5.2, placing a >semicolon at the end of Plot[] allowed me to output a plot in the >middle of a computation, without halting the computation. Now I can >no longer seem to output a plot in the middle of a long computation. >(I only see the output of Print[] commands.) I must be able to see >these plots during long computations, like I was able to in 5.2. >What's wrong? Can anyone please help? The manner in which graphics are generated changed from version 5 to version 6. In version 6 terminating any statement that generates graphics with a semicolon causes display of the graphics to be suppressed. The red semicolon is a warning to you the graphics will not display. You have a couple of ways to get plots to display when created as part of a long computation. One would be to use a Print statement. For example, x = a + b; Print@Plot[x, {x, 0, 1}]; y = x; or assign use a variable to capture the graphic and display it later. That is, x = a + b; z = Plot[x, {x, 0, 1}]; y = x; Show[z]