This is my first post on the forum. Thanks in advance for any response. I am using marginsplot in Stata 16.1 to plot average marginal effects of six predictor variables from a partial proportional odds model regressing ordinal well-being outcomes (using the user-written gologit2 from SSC, version 3.2.5). My question is: with marginsplot, how can I make the estimates plotted have equal horizontal spacing between them? For the purpose of exploration, I have generated 20 different graphs using marginsplots from this model. This is the only marginsplot where this unequal horizontal spacing is present, and I cannot find what I'm doing differently/wrong to create this problem.
This is my actual graph, on which I have drawn arrows and hollow marker symbols towards the right, pointing to the correction I hope to make (moving the markers for logincome's MEs to the right so they are over their tick and as far away from their left side neighbor as the others are to theirs.

Here is the code I ran to get the average marginal effects of these six predictors:
Then I have marginsplot code, formatted the way I want it except for the spacing between the last two estimates. The following abbreviated code reproduces the problem (when working with my full data set, anyway):
This is what my abbreviated marginsplot code produces, which is the same problem without the formatting code in place. Hence, I'm unsure what the source of my problem is, why the MEs for logincome are not evenly spaced like the others are, nor how to fix it. I know the problem is something I have done wrong or omitted. If anyone knows what it is, I thank you in advance for your time.

This is a sample of my data:
This is my actual graph, on which I have drawn arrows and hollow marker symbols towards the right, pointing to the correction I hope to make (moving the markers for logincome's MEs to the right so they are over their tick and as far away from their left side neighbor as the others are to theirs.
Here is the code I ran to get the average marginal effects of these six predictors:
Code:
//earlier gologit2 INDEX_LER i.Prosocial i.freedom i.counton i.healthprob /// i.education i.corruptind c.logincome c.logage i.gender i.region i.hindu /// i.decade if year==2009, /// vce(robust) autofit gamma estimates store ppo2009 //and now estimates restore ppo2009 margins, dydx(Prosocial freedom counton healthprob corruptind logincome)
Code:
/*this abbreviated code also generates the problem I am trying to figure out; please note spacing
between 10 and 11 on x axis, and how 2 4 6 8 10 are evenly spaced, but not 10 and 11 */
marginsplot, noci allsimplelabels nolabel
This is a sample of my data:
Code:
* Example generated by -dataex-. For more info, type help dataex clear input byte(gender education) int year byte(counton region) float(logincome logage) byte(hindu freedom healthprob corruptind) int decade byte(Prosocial INDEX_LER _est_ppo2009) 1 1 2009 1 5 3.196875 1.612784 1 1 0 1 2009 0 . 0 0 1 2009 1 2 3.418724 1.39794 1 0 1 1 2009 0 2 1 0 1 2009 0 5 3.321814 1.39794 1 1 0 1 2009 1 1 1 1 2 2009 0 4 3.719754 1.612784 1 1 0 1 2009 1 2 1 1 2 2009 0 4 3.497905 1.20412 1 0 0 1 2009 1 2 1 0 1 2009 1 4 4.321814 1.69897 0 1 0 1 2009 1 . 0 1 1 2009 1 3 3.418724 1.544068 1 0 0 1 2009 1 2 1 0 1 2009 0 4 3.497905 1.5797836 1 1 0 1 2009 0 2 1 0 2 2009 1 3 4.196875 1.544068 1 1 0 1 2009 0 2 1 1 2 2009 1 2 3.798935 1.3424227 1 0 0 0 2009 0 2 1 1 1 2009 1 5 3.798935 1.6812413 1 0 0 1 2009 0 2 1 0 1 2009 1 5 3.418724 1.39794 1 0 0 1 2009 1 2 1 1 1 2009 1 5 3.622844 1.30103 1 1 0 1 2009 1 2 1 1 1 2009 0 4 4.020784 1.69897 0 0 0 1 2009 1 2 1 1 2 2009 0 4 4.020784 1.6532125 0 1 0 1 2009 0 2 1 1 2 2009 1 3 3.321814 1.2787536 1 1 0 1 2009 1 . 0 1 1 2009 0 1 3.622844 1.518514 1 1 1 1 2009 0 . 0 1 2 2009 1 5 3.798935 1.50515 1 0 0 1 2009 1 2 1 1 1 2009 1 5 3.497905 1.6532125 1 1 0 1 2009 0 2 1 1 1 2009 1 2 3.6739964 1.6532125 0 0 0 1 2009 0 2 1 end label values gender gender label def gender 0 "female", modify label def gender 1 "male", modify label values education education label def education 1 "up to 8 years basic", modify label def education 2 "9-15 years", modify label values counton counton label def counton 0 "no social support", modify label def counton 1 "yes social support", modify label values region region label def region 1 "Central", modify label def region 2 "East", modify label def region 3 "West", modify label def region 4 "North", modify label def region 5 "South", modify label values hindu hindu label def hindu 0 "not Hindu", modify label def hindu 1 "Hindu", modify label values freedom freedom label def freedom 0 "no freedom", modify label def freedom 1 "yes freedom", modify label values healthprob healthprob label def healthprob 0 "no health prob", modify label def healthprob 1 "yes health prob", modify label values corruptind corruptind label def corruptind 0 "no corruption", modify label def corruptind 1 "yes corruption", modify label values decade decade label values Prosocial Prosocial label def Prosocial 0 "no prosocial", modify label def Prosocial 1 "yes prosocial", modify label values INDEX_LER INDEX_LER label def INDEX_LER 1 "Suffering", modify label def INDEX_LER 2 "Struggling", modify label var gender "gender" label var education "education level" label var year "year" label var counton "someone to count on" label var region "Region" label var logincome "log-10 income" label var logage "log-10 age" label var hindu "Hindu" label var freedom "freedom - life choices" label var healthprob "major health problems" label var corruptind "perceived corruption" label var decade "2009 or 2019" label var Prosocial "Prosociality Index" label var INDEX_LER "Life Evaluation Index" label var _est_ppo2009 "esample() from estimates store"
Comment