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: location of text/textbox in plot

From   Nick Cox <>
To   "''" <>
Subject   RE: st: location of text/textbox in plot
Date   Fri, 28 Oct 2011 19:22:21 +0100

In a sense the whole point of the -text()- option is to put text at a specified absolute location in terms of the two variables being plotted. It is clear why you want to subvert that, but Stata's algorithms are a little complicated, given explicit and implicit requests for axis scales together with label and tick positions. 

That said, if you are not using the -legend()- option, this is a different technique:

. sysuse auto
(1978 Automobile Data)

. scatter mpg weight, legend(on order(- "text here") pos(11) ring(0))

Although it's not documented as such in recent manuals, as far as I can recall, this article is still of some relevance 

STB-25  dm28  . . .  Calculate nice numbers for labeling or drawing grid lines
        (help nicenum if installed) . . . . . . . . . . . . . . . J. W. Hardin
        5/95    pp.2--3; STB Reprints Vol 5, pp.19--20


Cohen, Elan

Thank you.  I've read that article before.  While it explains some of Stata's behavior, it doesn't explain the "choose-a-nice-number routine" (Stata's words, see -help axis_label_options-) which I believe is what I'm after.  I'm creating a couple of dozen plots so manually determining the ranges & labels is not an options.

The way I see it, I either need to understand the choose-a-nice-number routine (it doesn't seem to be public information) so I can extract the "nice" ranges or it would convenient to have -ring()- and -position()- suboptions similar to -legend()-.

Eduardo Pérez Pérez

This article describes how Stata chooses the x and y ranges:

Once you specify the -range- and -label- options of your graph, Stata will not override your values (unless you are asking for too narrow ranges according to your data and labels), and you can place your text in the right place.

On Fri, Oct 28, 2011 at 11:17 AM, Cohen, Elan <> wrote:

> I'm trying to add text to the upper left of my scatter plot via the -text()- option.  However, because Stata chooses the x and y ranges to be neat, there's no way for me to know exactly what the minimum x value & maximum y value are.  If I simply choose these values from my data, the text box is always closer to the center than I'd like.
> Is there a way to obtain this information from Stata?  Alternatively, is there an option to place the textbox in the upper left?

*   For searches and help try:

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