Notice: On April 23, 2014, Statalist moved from an email list to a forum, based at statalist.org.
From | Nick Cox <njcoxstata@gmail.com> |
To | "statalist@hsphsun2.harvard.edu" <statalist@hsphsun2.harvard.edu> |
Subject | Re: st: graphing median values against time |
Date | Wed, 9 Apr 2014 15:06:47 +0100 |
I'd check for strange characters. Copy your command line into a string variable and look for unusual ASCII characters with -charlist- (SSC) or any alternative of your choice. Nick njcoxstata@gmail.com On 9 April 2014 14:25, Donald Spady <dspady@ualberta.ca> wrote: > Tim > After digesting your and Nick's advice I have used the lgraph command to good effect; however I have one problem. If I write: > foreach name in "cumten" "cumswol" { > igraph `name' following if visspell !=. & recnum == 1, by(aborig) label(0 3 9 15, lab size(tiny)) stat(mean) title("Mean `name' (Median:nonFN:Navy; FN:Gold)",size(small)) label(#10) also collapse((median) median = `name') addplot(line median following if aborig == 0, lcolor(dknavy) clwidth(thick)|| line median following if aborig == 1) > } > > everything works fine and I get pretty pictures. > > BUT if I write: > foreach name in "cumten" "cumswol" { > lgraph `name' following if visspell !=. & recnum == 1, by(aborig) label(0 3 9 15, lab size(tiny)) stat(mean) title("Mean `name' (Median:nonFN:Navy; FN:Gold)",size(small)) label(#10) also collapse((median) median = `name') addplot(line median following if aborig == 0, lcolor(dknavy) clwidth(thick)|| line median following if aborig == 1, lcolor(black)) > } > The only change is the addition of lcolor(black) at the end of the command. > > I get the message: > invalid 'title' > r(198) > > Why. And how do I fix it. > > Many thanks. > Don > > On Mar 30, 2014, at 8:43 PM, Timothy Mak <tshmak@hku.hk> wrote: > >> <> >> Thanks Nick very much for helping to answer my question. >> >> To plot more than one summary statistics is a bit difficult, and you do have to use the -addplot- and the -alsocollapse- options. If you hadn't specified -by(aborig)-, then Nick's syntax would be almost right, except that you don't need the -if bvisittm1N- in the end, i.e. -addplot(line median bvisittm1N)- would do. However, because you have specified -by(aborig)-, you really need to do: >> >> addplot(line median bvisittm1N if aborig == 1 || line median bvisittm1N if aborig == 2) >> >> supposing your variable aborig has 2 levels (1,2). >> >> To understand the use of the -addplot- and the -alsocollapse- option a bit more, you may want to use the -nopreserve- option. This gives you the dataset that -lgraph- actually uses to plot your graph. Also, have a look at the macros `r(command)' and `r(options)'. This gives you the -twoway- syntax that lgraph uses on the collapsed data. Be sure to use command double quotes though when you display the macros, i.e.: >> >> di `"`r(command)'"' >> di `"`r(options)'"' >> >> I hope that helps. >> >> Tim >> >> >> -----Original Message----- >> From: owner-statalist@hsphsun2.harvard.edu [mailto:owner-statalist@hsphsun2.harvard.edu] On Behalf Of Nick Cox >> Sent: 31 March 2014 08:38 >> To: statalist@hsphsun2.harvard.edu >> Subject: Re: st: graphing median values against time >> >> You *must* specify a -twoway- subcommand, not -lgraph-, in the >> -addplot()- call. This is documented in the help for -addplot option-. >> >> I doubt very much that giving the same variable names as in the main >> call will do what you want. >> >> My second guess is that you need something more like >> >> alsocollapse((median) median=totend28) >> addplot(line median bvisittm1N if bvisittm1N) >> >> Nick >> njcoxstata@gmail.com >> >> >> On 31 March 2014 01:29, Donald Spady <dspady@ualberta.ca> wrote: >>> Nick >>> I had tried various combinations of that command and could not get it to work. >>> >>> here is my command >>> .lgraph tottend28 bvisittm1N if bvisittm1N < 55, by(aborig) xlabel(0(3)54) stat(mean) alsocollapse((median)) addplot(lgraph tottend28 bvisittm1N if bvisittm1N <55, by(aborig)) >>> >>> It doesn't work. I get the error >>> lgraph is not a twoway plot type >>> r(198); >>> >>> Don >>> On Mar 30, 2014, at 5:14 PM, Nick Cox <njcoxstata@gmail.com> wrote: >>> >>>> Timothy explains how to do that in the help. >>>> >>>> addplot(plot) This allows additional twoway plots to be plotted. >>>> See addplot_option. Note that >>>> because lgraph collapses the data before plotting in twoway, >>>> plots given in addplot(plot) >>>> should also refer to the collapsed data. Specify in >>>> alsocollapse(clist) any additional data >>>> that need to be collapsed. >>>> >>>> So, if you want median as well as mean you must specify >>>> >>>> alsocollapse(median) addplot(<whatever>) >>>> >>>> Note that nothing obliges you to use another -line- call. >>>> >>>> I haven't use -lgraph-, just looked at its help, but Timothy provides >>>> lots of functionality. >>>> Nick >>>> njcoxstata@gmail.com >>>> >>>> >>>> On 30 March 2014 23:51, Donald Spady <dspady@ualberta.ca> wrote: >>>>> Timothy >>>>> I am using your -lgraph- command and wonder if it is possible to have TWO stats created (e.g. mean and median) for the same variable(s) at the same time. I want to plot both mean and median and cannot create an overlay to do so. >>>>> >>>>> Many thanks >>>>> Don >>>>> On Mar 28, 2014, at 1:29 AM, Timothy Mak <tshmak@hku.hk> wrote: >>>>> >>>>>> The command -lgraph- that I wrote is for exactly this kind of problem if you don't want to create all the variables before plotting a graph. >>>>>> You can see it by typing: >>>>>> ssc des lgraph >>>>>> >>>>>> Tim >>>>>> >>>>>> -----Original Message----- >>>>>> From: owner-statalist@hsphsun2.harvard.edu [mailto:owner-statalist@hsphsun2.harvard.edu] On Behalf Of Donald Spady >>>>>> Sent: 28 March 2014 08:59 >>>>>> To: Statalist Statalist >>>>>> Subject: Re: st: graphing median values against time >>>>>> >>>>>> Nick >>>>>> It works. Just as I needed. Many thanks. >>>>>> John: That suggestion didn't work the way I wanted it to, but thanks for the idea. >>>>>> >>>>>> Don >>>>>> On Mar 27, 2014, at 5:48 PM, Nick Cox <njcoxstata@gmail.com> wrote: >>>>>> >>>>>>> Sure. If you use -egen-'s -median()- and -mean()- functions to get the >>>>>>> variables you want, then it's any graph you want. >>>>>>> >>>>>>> As the median and mean values are repeated, don't plot them repeatedly. >>>>>>> >>>>>>> Here are some dopey examples. >>>>>>> >>>>>>> . webuse grunfeld >>>>>>> >>>>>>> . egen median = median(invest), by(year) >>>>>>> >>>>>>> . egen mean = mean(invest), by(year) >>>>>>> >>>>>>> . egen tag = tag(year) >>>>>>> >>>>>>> . line mean median year if tag >>>>>>> >>>>>>> For finer subdivisions, just use more variables as arguments to -by()-. >>>>>>> >>>>>>> Nick >>>>>>> njcoxstata@gmail.com >>>>>>> >>>>>>> >>>>>>> On 27 March 2014 22:34, Donald Spady <dspady@ualberta.ca> wrote: >>>>>>>> Dear all >>>>>>>> I want to graph the median and mean values of a series of variables against a time variable (on the X axis) and with the option of stratifying the variables by another one (such as sex or disease state). I think I can do this by collapsing the data but is it possible to do this while retaining the data set in its 'original' state. I have searched the archives and the reference manuals but have not come up with anything that seems to be what I want. >>>>>>>> In many ways what I would like is a box plot with JUST the median (or mean) being plotted: no box, no outliers. Is that possible. >>>>>>>> >>>>>>>> Thanks >>>>>>>> Don >>>>>>>> * >>>>>>>> * For searches and help try: >>>>>>>> * http://www.stata.com/help.cgi?search >>>>>>>> * http://www.stata.com/support/faqs/resources/statalist-faq/ >>>>>>>> * http://www.ats.ucla.edu/stat/stata/ >>>>>>> >>>>>>> * >>>>>>> * For searches and help try: >>>>>>> * http://www.stata.com/help.cgi?search >>>>>>> * http://www.stata.com/support/faqs/resources/statalist-faq/ >>>>>>> * http://www.ats.ucla.edu/stat/stata/ >>>>>>> >>>>>> >>>>>> >>>>>> * >>>>>> * For searches and help try: >>>>>> * http://www.stata.com/help.cgi?search >>>>>> * http://www.stata.com/support/faqs/resources/statalist-faq/ >>>>>> * http://www.ats.ucla.edu/stat/stata/ >>>>>> >>>>>> * >>>>>> * For searches and help try: >>>>>> * http://www.stata.com/help.cgi?search >>>>>> * http://www.stata.com/support/faqs/resources/statalist-faq/ >>>>>> * http://www.ats.ucla.edu/stat/stata/ >>>>>> >>>>> >>>>> >>>>> * >>>>> * For searches and help try: >>>>> * http://www.stata.com/help.cgi?search >>>>> * http://www.stata.com/support/faqs/resources/statalist-faq/ >>>>> * http://www.ats.ucla.edu/stat/stata/ >>>> >>>> * >>>> * For searches and help try: >>>> * http://www.stata.com/help.cgi?search >>>> * http://www.stata.com/support/faqs/resources/statalist-faq/ >>>> * http://www.ats.ucla.edu/stat/stata/ >>>> >>> >>> >>> * >>> * For searches and help try: >>> * http://www.stata.com/help.cgi?search >>> * http://www.stata.com/support/faqs/resources/statalist-faq/ >>> * http://www.ats.ucla.edu/stat/stata/ >> >> * >> * For searches and help try: >> * http://www.stata.com/help.cgi?search >> * http://www.stata.com/support/faqs/resources/statalist-faq/ >> * http://www.ats.ucla.edu/stat/stata/ >> >> * >> * For searches and help try: >> * http://www.stata.com/help.cgi?search >> * http://www.stata.com/support/faqs/resources/statalist-faq/ >> * http://www.ats.ucla.edu/stat/stata/ >> > > > * > * For searches and help try: > * http://www.stata.com/help.cgi?search > * http://www.stata.com/support/faqs/resources/statalist-faq/ > * http://www.ats.ucla.edu/stat/stata/ * * For searches and help try: * http://www.stata.com/help.cgi?search * http://www.stata.com/support/faqs/resources/statalist-faq/ * http://www.ats.ucla.edu/stat/stata/