Re: making a Module or Column that will print lines interspersed
- To: mathgroup at smc.vnet.net
- Subject: [mg129683] Re: making a Module or Column that will print lines interspersed
- From: awnl <awnl at gmx-topmail.de>
- Date: Sun, 3 Feb 2013 20:24:56 -0500 (EST)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- Delivered-to: l-mathgroup@wolfram.com
- Delivered-to: mathgroup-newout@smc.vnet.net
- Delivered-to: mathgroup-newsend@smc.vnet.net
- References: <kel4u8$38r$1@smc.vnet.net>
Am 03.02.2013 08:51, schrieb Bruce Shore: > I run Mathematica 7. I have some legacy notebooks, from Mathematica 5, in which there were Modules such as > > macro :=Module[{j}, > Print["something"]; > plota; > Print["something else"]; > plotb > ]; > > where plota and plotb were plots. Now with Mathematica 7 the semicolons prevent the plots from showing up. Show[plota]; has the same problem. The semicolons, which are needed in a Module, prevent the plotting. I have tried using a Column or a Graphics column, > > macro:=Column[{ > Print["something"], > plota, > Print["something else"], > plotb > }] > > and this does the printing and the plotting, but all the printing comes at the beginning and all the plots come after that. I really want the printing to come in between the plots, in the order that I show them. How can I do this? > I would suggest to use a Print for each of the plots, e.g.: macro :=Module[{j}, Print["something"]; Print[plota]; Print["something else"]; Print[plotb]; ]; this will not only be much easier to change but also reflect the original code better: it makes the display of the plot a side effect as it always was before version 5. For new code, it of course it's of course better to take advantage of the fact that graphics-expressions that are return values now are rendered nicely in the frontend... hth, albert PS: you'll of course find similar questions and answers many times if you search the archive for messages from the time when version 6 came out...