[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: AW: st: graph -by- option

From   Jeph Herrin <>
Subject   Re: AW: st: graph -by- option
Date   Tue, 11 Aug 2009 08:51:41 -0400

My first attempt was using missing data for the middle
graph, but I didn't want to manually edit each time. Using
the recorder is a good tip - I'll -play- around with it a


Martin Weiss wrote:
True! And to make this worthwhile, let the graph editor do its magic...

sysuse auto, clear

set obs `=_N+1'
replace foreign = 0.5 in l

twoway scatter rep78 mpg,/* */ by(foreign, cols(3))

gr play edit

with file edit.grec defined as follows, to be saved to the PERSONAL/grec directory:

StataFileTM:00001:01100:GREC:                          :
*! classname: bygraph_g
*! family: by
*! date: 11 Aug 2009
*! time: 10:09:57
*! graph_scheme: s2color
*! naturallywhite: 1
*! end

// File created by Graph Editor Recorder.
// Edit only if you know what you are doing.

.plotregion1.subtitle[2].text = {}
// subtitle[2] edits

.plotregion1.xaxis1[2].draw_view.setstyle, style(no)
// xaxis1[2] edits

.plotregion1.plotregion1[2].EditCustomStyle , j(-1) style(boxstyle(shadestyle(color(none))))
.plotregion1.plotregion1[2].EditCustomStyle , j(-1) style(boxstyle(linestyle(color(none))))
// plotregion1[2] color

// <end>



-----Ursprüngliche Nachricht-----
Von: [] Im Auftrag von Philipp Rehm
Gesendet: Dienstag, 11. August 2009 10:07
Betreff: Re: st: graph -by- option

One possible workaround may be to add fake-observations to your dataset.

Here is an example:

sysuse auto, clear
set obs `=_N+1'
replace foreign = 0.5 in `=_N'
twoway scatter rep78 mpg, by(foreign, cols(3))


Maarten buis wrote:
--- On Mon, 10/8/09, Jeph Herrin wrote:
I am making a series of graphs, each of which
includes of a -by- over a 3 valued variable Z.
Three plots are produced in a single row.

For some graphs, the second value of Z (Z=2) has
no data, so there are only 2 plots. I would like
-by- to produce a 1x3 layout, with -hole(2)-, but
this doesn't seem to be doable. I have only been
able to produce either 1) 2 plots, with no hole
in the middle or 2) 3 plots, the center one with no
data. Is there a way to trick -by- into leaving a
hole in the middle position?

I realize that -graph combine- might solve this
problem, but it has a separate problem in that
I cannot omit the axes between plots.
I have no solution, just an example of what I expected to produce the graphs you want (two graphs in a row with a blank spot in the middle), but didn't. Maybe this example code inspires someone.

*------- begin example -----------
sysuse auto, clear
twoway scatter rep78 mpg, ///
   by(foreign, cols(3) holes(2))
*--------- end example -----------

Hope this helps,

Maarten L. Buis
Institut fuer Soziologie
Universitaet Tuebingen
Wilhelmstrasse 36
72074 Tuebingen

*   For searches and help try:

*   For searches and help try:

*   For searches and help try:

*   For searches and help try:

© Copyright 1996–2014 StataCorp LP   |   Terms of use   |   Privacy   |   Contact us   |   What's new   |   Site index