Thanks to Kit Baum, a program crossplot is downloadable from SSC. To install, use ssc as usual. Stata 8 is required. People on versions of Stata before 11 will need to copy the .sthlp file to .hlp.
crossplot produces an array of scatter or other twoway plots for a yvarlist and an xvarlist. There is one plot for each y variable from yvarlist and each x variable from xvarlist. The name crossplot is intended to signal cross-combination. Graphs are drawn individually and then combined with graph combine.
Note that only exceptionally is this similar to what graph matrix does. One y versus several x, several y versus several x, several y versus one x are all supported.
The natural reaction of experienced Stata users to wanting an array of similar plots for differing variables is to write a loop, or two. But at the same time a convenience wrapper has some attractions. One of the motives for writing crossplot was definitely to support teaching, particularly for groups to whom the whole idea of programming a loop is usually neither obvious nor appealing.
crossplot is in a strong sense just a reissue of cpyxplot, on SSC since 1999 or so. But I think the new name is better, the new syntax is better and crossplot has an extra detail that could be useful.
There is a risk that a nice name, which I scrupulously avoided originally, is one that might taken by StataCorp for some purpose, but I will take that risk.
More comments in the help.
Here is a simple example:

crossplot produces an array of scatter or other twoway plots for a yvarlist and an xvarlist. There is one plot for each y variable from yvarlist and each x variable from xvarlist. The name crossplot is intended to signal cross-combination. Graphs are drawn individually and then combined with graph combine.
Note that only exceptionally is this similar to what graph matrix does. One y versus several x, several y versus several x, several y versus one x are all supported.
The natural reaction of experienced Stata users to wanting an array of similar plots for differing variables is to write a loop, or two. But at the same time a convenience wrapper has some attractions. One of the motives for writing crossplot was definitely to support teaching, particularly for groups to whom the whole idea of programming a loop is usually neither obvious nor appealing.
crossplot is in a strong sense just a reissue of cpyxplot, on SSC since 1999 or so. But I think the new name is better, the new syntax is better and crossplot has an extra detail that could be useful.
There is a risk that a nice name, which I scrupulously avoided originally, is one that might taken by StataCorp for some purpose, but I will take that risk.
More comments in the help.
Here is a simple example:
Code:
sysuse auto, clear set scheme s1color gen rt_mpg = sqrt(mpg) gen ln_mpg = ln(mpg) gen rec_mpg = 100/mpg crossplot (mpg rt_mpg ln_mpg rec_mpg) weight, combine(imargin(small))
Comment