Bookmark and Share

Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at

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

RE: st: Graph editor: Change order of subgraphs in bygraph ?

From   "Jesper Lindhardsen" <[email protected]>
To   <[email protected]>
Subject   RE: st: Graph editor: Change order of subgraphs in bygraph ?
Date   Sat, 20 Aug 2011 08:56:45 +0200

Thanks again. This is really helpful. But actually I find your
"hacking"methods more appeling as I do not need the "original" syntax to
recreate the graphs (although it can be found in the .gph file).
I tried to write a .gph parse command in Stata to switch bygraphs by
changing the .gph file, which worked fine for producing the actual file,
but the binary content bit me - so the resultant file was useless :-) I
guess one could combine toyr to approaches.....

BW, Jesper

Scott wrote:

I remember reading in Kit Baum's "An Introduction to Stata
Programming" that *.gph files were actually programs to reproduce the

Looking back at section "10.5 Extracting data from graph files'
sersets" shows that there is an easier way:

//create original graph
sysuse sp500,clear
xtile g= date, n(4)
twoway bar change date , by(g,  rescale  ) xlabel(, labsize(*.7))
graph save Graph "C:\Documents and

//extract data from graph
cd  "C:\Documents and Settings\scott.merryman\Desktop\"
serset clear
graph use  "Graph.gph"
serset dir
forv i = 0/`=r(id)' {
	serset set `i'
	serset use
	gen group = `=`i'+1'
	save temp`i'.dta,replace
	local files "`files' temp`i'.dta "
append using  `files'
clonevar gr2 = group
replace gr2 = 4 if group == 1
replace gr2 = 1 if group==4
label define group 1 "4" 2 "2" 3 "3" 4 "1"
label value gr2 group
twoway bar change date , by(gr2,  rescale  ) ///
  xlabel(, labsize(*.7)) name(graph_new,replace)

Hope this helps,

*   For searches and help try:

© Copyright 1996–2018 StataCorp LLC   |   Terms of use   |   Privacy   |   Contact us   |   Site index