Re: Printing
- To: mathgroup at christensen.cybernetics.net
- Subject: [mg1781] Re: [mg1754] Printing
- From: Richard Mercer <richard at seuss.math.wright.edu>
- Date: Sun, 30 Jul 1995 21:35:15 -0400
> OK, so I've got a notebook that generates big lists of > plots from input data files. There are a variable number > of plots (polar list plots) genrerated from each file. > What I want to do is print them out in such a way that > I get consistently sized plots on the page. But, I don't > want to have just a single plot per page. What I'm doing > now is using GraphicsArray and then spitting out to a > .ps file with the Display[] commmand. Works fine - except > that the plots are sized so that they all fit onto a > single page. This is fine when there are only a few > plots, but when a file generates a large number of plots > each plot is unreadably small. Ideally, I would like to > have a consistent number - say five - of plots per page > and have each plot be the same size. I'd like to > automatically generate a page break when then number of > plots exceeded the desired number/page so that a table > of 15 plots would print out over 3 pages. > > Any ideas? Seems like there's got to be a straight > forward way of doing this in Mathematica w/o having to > go in and do all of the calculations as to table size > and file manipulation explicitly. > Mike, What you need to do is decide how many graphs you want to have in each graphics array (i.e. page, if I understand you), then generate multiple GraphicsArray objects when you exceed this number. Here's a brief hack that will show you what I mean. You will undoubtedly have to clean it up a bit. Assume that you want mxn graphics arrays and your graphs are stored in a list assigned to the variable "rest". While[rest =!= {}, num = Min[m*n,Length[rest]]; {current,rest} = {Take[rest,num],Drop[rest,num]}; Show[GraphicsArray[Partition[current,n]],DisplayFunction:>whatever] ]; Richard Mercer