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

# Re: st: How to start a bar graph with a minimum other than 0

 From Nick Cox <[email protected]> To [email protected] Subject Re: st: How to start a bar graph with a minimum other than 0 Date Wed, 31 Aug 2011 17:21:23 +0100

```The line

. graph bar (mean) mpg, over(rep78) exclude0 ysc(r(10(10)40))

is now removed from below as it was just random noise. Please ignore.

On Wed, Aug 31, 2011 at 4:50 PM, Nick Cox <[email protected]> wrote:
> You are correct. -yscale(range())- will never exclude what would
> otherwise be shown, but -exclude0- will do what you want (so long as
> the smallest value shown is positive). Consider this sequence.
>
> . sysuse auto, clear
> (1978 Automobile Data)
>
> . graph bar (mean) mpg, over(rep78)
>
> . graph bar (mean) mpg, over(rep78) exclude0
>
>
> . graph bar (mean) mpg, over(rep78) exclude0 ysc(r(10,30))
>
> . graph bar (mean) mpg, over(rep78) exclude0 ysc(r(10,30)) yla(10(5)30)
>
> There is no need to cheat.
>
> (A horrible graph, but that's a different issue.)
>
> Nick
>
> On Wed, Aug 31, 2011 at 4:45 PM, Andrew Hsiao <[email protected]> wrote:
>> I just studied the command yscale(range(x y)) in the document a bit more. It seems it is not used to define the range of axis to be shown on the graph. Rather it is used to EXPAND the range of the values in the data. So it does seem that Stata does not allow "cheating" to truncate the bottom part of the graph.
>>
>> It looks the solution is to find the aggregate of the variables (group means) and plot the values directly, using range(50 100) to define the bottom of the graph.
>>
>> -----Original Message-----
>> From: [email protected] [mailto:[email protected]] On Behalf Of Ronan Conroy
>> Sent: Wednesday, August 31, 2011 11:21 AM
>> To: [email protected]
>> Subject: Re: st: How to start a bar graph with a minimum other than 0
>>
>> On 2011 Lún 31, at 15:24, Andrew Hsiao wrote:
>>
>>> I was trying to create a bar graph with a set of group means. The differences between the groups are not big numerically but I'd like to highlight the differences. I want to  plot the bars at a value other than 0 (not meant to mislead but to make the point of where they differ).
>>
>> Then try cheating.
>>
>> 1. Subtract a constant value from each mean (looking at your data, you might subtract 70)
>>
>> 2. On the plot, use bogus labels
>>
>> ylabel(0 "70" 5 "75" 10 "80" 15 "85 20 "90", angle(0))
>>
>

*
*   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/
```