Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Line graph only plotting at integer numbers

    Hello,

    I have a question regarding the plotting of multiple lines in one graph.

    The dependent variable is ROA, the independent variable is International Diversification and the moderating variable is Financial Openness.

    I want to make a graph with international diversification on the x-axis, ROA on the y-axis, and three lines which represent different levels of financial openness. The range of financial openness is from 0.0025479 till 0.7704125, and I made three groups which equal ranges. The commands I use for this are the following:

    XXX

    quietly reg ROA IntDiv_lag c.IntDiv_lag#c.FinancialOpenness c.IntDiv_lag#c.IntDiv_lag##c.FinancialOpenness if FinancialOpenness >= 0.0025479 & FinancialOpenness <= 0.258502766 & ROA !=. & TobinsQ !=. & IntDiv_lag !=. & FinancialOpenness !=. & ln_Size_lag !=. & Leverage_lag !=. & RandD_lag !=. & Cash_lag !=. & PPE_lag !=. & CAPEX_lag !=. & ln_GDPpercapita !=. & FinancialDevelopment !=. , robust cluster (gvkey)

    qui margins, at(IntDiv_lag=(-0.9932386/1.328827)) post

    estimates store FirstThird

    quietly reg ROA IntDiv_lag c.IntDiv_lag#c.FinancialOpenness c.IntDiv_lag#c.IntDiv_lag##c.FinancialOpenness if FinancialOpenness >= 0.258502766 & FinancialOpenness <= 0.514457632 & ROA !=. & TobinsQ !=. & IntDiv_lag !=. & FinancialOpenness !=. & ln_Size_lag !=. & Leverage_lag !=. & RandD_lag !=. & Cash_lag !=. & PPE_lag !=. & CAPEX_lag !=. & ln_GDPpercapita !=. & FinancialDevelopment !=. , robust cluster (gvkey)

    qui margins, at(IntDiv_lag=(-0.9932386/1.328827)) post

    estimates store SecondThird

    quietly reg ROA IntDiv_lag c.IntDiv_lag#c.FinancialOpenness c.IntDiv_lag#c.IntDiv_lag##c.FinancialOpenness if FinancialOpenness >= 0.514457632 & FinancialOpenness <= 0.7704125 & ROA !=. & TobinsQ !=. & IntDiv_lag !=. & FinancialOpenness !=. & ln_Size_lag !=. & Leverage_lag !=. & RandD_lag !=. & Cash_lag !=. & PPE_lag !=. & CAPEX_lag !=. & ln_GDPpercapita !=. & FinancialDevelopment !=. , robust cluster (gvkey)

    qui margins, at(IntDiv_lag=(-0.9932386/1.328827)) post

    estimates store ThirdThird

    coefplot FirstThird SecondThird ThirdThird, at ylab(-.04 (.02) .04) xlab(-1 (.2) 1.2) ytitle(ROA) xtitle (International Diversification) recast(line) lwidth(*2)

    XXX

    When I plot this graph it looks like the following:
    Click image for larger version

Name:	Stata graph.jpg
Views:	1
Size:	26.7 KB
ID:	1757062


    At this point, Stata only plots points of the lines at the integer numbers of -1, 0 and 1. However, what I'm trying to achieve is to get the lines continuous, or when that is not possible, to get extra points at every decimal instead of just at every integer.

    Hoping someone has some tips on how I can achieve this.

    Kind regards,
    Rinze

  • #2
    coefplot plots the coefficients, not the margins.

    Comment


    • #3
      Code:
      sysuse auto, clear
      
      bys foreign: summ mpg
      
      reg price mpg if foreign
      margins, at(mpg=(14(1)41)) saving(m1, replace)
      
      reg price mpg if ~foreign
      margins, at(mpg=(12(1)34)) saving(m2, replace)
      
      *ssc install combomarginsplot
      combomarginsplot m1 m2 , labels("Foreign" "Domestic")

      Comment

      Working...
      X