[Date Prev][Date Next][Thread Prev][Thread Next][Date index][Thread index]

RE: st: Graphs With Log Scale: A Bug?

From   "Nick Cox" <>
To   <>
Subject   RE: st: Graphs With Log Scale: A Bug?
Date   Wed, 28 May 2008 14:48:13 +0100

Please accept more responsibility for solving problems. 

It is just a matter of (a) reading the help and (b) applying textbook formulae. 

Here is a sketch: 

local level = <your_choice, e.g. 95> 
regress <whatever>
tempvar pred se ul ll  
predict `pred' 
predict `se', stdp  
local level = (100 - `level') / 200  
gen `ul' = `pred' + invttail(e(df_r), `level') * `se' 
gen `ll' = `pred' - invttail(e(df_r), `level') * `se'


Vladimir V. Dashkeyev


Thanks for the answer. I did not use -predict- since this approach
does not provide a quick way for drawing confidence intervals. If I'm
wrong and there is a way to draw CI, please, let me know about it.

Thank you,

On Wed, May 28, 2008 at 4:21 PM, Nick Cox <> wrote:
> My advice is to use -predict- after each model fitted to save the results in separate variables. Then draw one graph to get you want. I wouldn't approach this via -lfit- or
> -lfitci-. That will also oblige you to make explicit what you are doing.
> Nick
> Vladimir V. Dashkeyev
> Thanks for the reply. I should have emphasized in the first message,
> that I run -lfitci- of X on ln(Y) in both scenarios. The difference is
> in the scatter plot. In the first scenario I use ln(Y), and in the
> second -- Y with log scale option. I expected to get the same linear
> prediction line and the same scatter plot.
> But after I posted that question, I compared the graphs once again and
> realized that the real problem is with the Y axis scale. If I draw a
> scatter and prediction line on the same Y axis, everything is fine.
> Yet if I draw the same scatter with 2 Y axes I get different range of
> values on Y1 and Y2 axes. I need two Y axes for overlaid drawing of
> the scatter with -yscale (log)- option and linear prediction of
> X-ln(Y). Setting range on both axes to the same values did not help.
> They are very close but still shifted a bit. So the arrangement of
> observations and prediction line is not correct. So it's not a bug,
> but still a problem I have to solve.
> Is there any way to "tie" axis Y1 with axis Y2?
> Maarten buis
>> --- "Vladimir V. Dashkeyev" <> wrote:
>>> I drew a two-way plot with a linear prediction line -lfitci- of X on
>>> natural logarithm of Y. Next, I drew the plot of X on Y with log
>>> scale option -yscale(log)-.
>>> To my surprise regression line changed its slope. The slope is
>>> greater with the -yscale(log)- option. I used the same X axis and
>>> the second Y-axis for the linear prediction graph .
>>> Is this a bug or am I doing something wrong?
>> This is not a bug: in the first scenario you are thinking that there is
>> a linear relationship between ln(Y) and X and you are showing the
>> predictions, while in the second scenario you are thingking that there
>> is a linear relationship between Y and X and then transforme the
>> predictions to a log scale. So the results are different because the
>> models are different.

*   For searches and help try:

© Copyright 1996–2015 StataCorp LP   |   Terms of use   |   Privacy   |   Contact us   |   What's new   |   Site index