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

# Re: st: twoway bar

 From Nick Cox To statalist@hsphsun2.harvard.edu Subject Re: st: twoway bar Date Wed, 28 Mar 2012 13:58:50 +0100

```In the case of the code below

graph bar (mean) trunk turn, over(foreign)

is a more direct approach. But you still need -twoway- to plot your
means and confidence intervals.

Also, if in your code -group- is the x variable, then -by(group)- is
usually better omitted.

Nick

On Wed, Mar 28, 2012 at 1:49 PM, Nick Cox <njcoxstata@gmail.com> wrote:
> In each of your graph calls, you specify that -group- defines the x
> axis variable; inevitably -twoway- does exactly what you ask for and
> plots bars etc. on top of each other.
>
> You may be expecting default behaviour like that of -graph bar-, but
> -twoway bar- does not behave in the same way,
>
> One way round this is to use an offset. The following gives an example
>
> sysuse auto, clear
> egen mean_turn = mean(turn), by(foreign)
> egen mean_trunk = mean(trunk), by(foreign)
> label var mean_turn "Mean of Turn circle, ft"
> label var mean_trunk "Mean of Trunk space, cu. ft"
> gen foreign1 = foreign - 0.1
> gen foreign2 = foreign + 0.1
> twoway bar mean_turn foreign1 , barw(0.18) ///
> || bar mean_trunk foreign2, barw(0.18) xtitle("`: var label foreign'")
> base(0) xla(0 "Domestic" 1 "Foreign")
>
>
> SJ-7-1  gr0026  . . . .  Stata tip 42: The overlay problem: Offset for clarity
>        . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . J. Cui
>        Q1/07   SJ 7(1):141--142                                 (no commands)
>        tip for graphing several quantities on a continuous axis
>
> which is accessible to all at
>
> http://www.stata-journal.com/sjpdf.html?articlenum=gr0026
>
> Nick
>
> On Wed, Mar 28, 2012 at 1:29 PM, ofran almossawi
> <ofran.almossawi@gmail.com> wrote:
>
>> I have done a two way bar plot but stata keeps stacking the bars and the sd
>> lines on top of each other instead of laying all four columns side by side.
>>
>> I have compared the pain scores of two groups of patients post caesarean
>> section, before and after taking their pain medications. The sm group take
>> their own pain killers, and the nsm group are given the painkillers by the
>> midwves.
>>
>> This is the code that I used:
>>
>> twoway (bar meanpain group) (rcap  upper_pain lower_pain group) (bar
>> meanmed group) (rcap  upper_med lower_med group), by(group)
>>
>> i'm not sure where i'm going wrong with this.
>>

*
*   For searches and help try:
*   http://www.stata.com/help.cgi?search
*   http://www.stata.com/support/statalist/faq
*   http://www.ats.ucla.edu/stat/stata/
```