Announcement

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

  • How to align labels in -meta-

    Dear all,

    This is a real dataset. So I have scrambled a bit the biomarker names. Bear with me.
    The objective is to use -meta- to plot regression coefficients and the corresponding p-value.

    I am aware there are other alternatives such as -coefplot-, scatter/rcap, -metan- etc. But the -meta- graphs seem a bit nicer.

    The problem: -meta forestplot- fails to align well strings. Any suggestions on how to solve the problem?
    See a real example below.

    All the best,

    Tiago



    Code:
    *! prepare the dataset
    clear
    input str35 biomarker N mean lower upper
    "Sadasd  (g/L)" 67 -2.005361 -6.76237 2.751647
    "iclmZa citponosá ({&mu}g/dL)" 103 0.0344073 -0.0984404 0.1672551
    "oáZrinocn riiu ({&mu}g/L)" 83 0.0073011 -0.002171 0.0167733
    "meC tiolbáaospcr  ({&mu}g/dL)" 103 0.0683467 -0.0063204 0.1430137
    "tugae sn olerCabtono  ({&mu}g/L)" 104 0.0061882 -0.0166123 0.0289888
    "rt eooab nClteouagsn ({&mu}g/L)" 83 -0.0164623 -0.0703007 0.0373761
    ":ozoaRzãniceocbr"  103 5.932471 -1.133889 12.99883
    "omipesêáotaScni ll ({&mu}g/L)" 104 0.0046533 -0.058296 0.0676026
    " ltS aoeno aientsgulnêo ({&mu}g/L)" 104 0.0158911 -0.0262121 0.0579943
    "e inutnSoelo sgltêaao n ({&mu}g/L)" 83 -0.0074458 -0.1571615 0.14227
    "innua eonArgssoê ({&mu}g/L)" 104 1.351535 -2.159285 4.862354
    "náosunoriAriê ir ({&mu}g/L)" 83 0.039656 -0.0359255 0.1152374
    "oendáaguoCmns  I ({&mu}g/L)" 104 0.9043854 -1.608069 3.41684
    "Cmidoná iráoiur ({&mu}g/L)" 83 -9.887843 -33.37931 13.60362
    "iCirmnourdáioá ({&mu}g/L)" 104 0.0330633 -0.0170313 0.083158
    "ui rirMrráoúioecn ({&mu}g/L)" 83 -0.3591603 -1.359202 0.6408809
    end
    gene p_value = round(runiform(),0.01)
    format %9.2f p_value
    label variable biomarker `"Biomarker"'
    label variable p_value `"{it:P}"'
    
    *! set data for meta-analysis
    meta set mean lower upper, studylabel(biomarker)
    
    *! plot the results using the standard approach
    *! results look good - well aligned at position -99 (see the red line)
    
    meta forest, cibind(parentheses) overallopts(size(zero) color(white)) ///
    nowmarkers noomarker markeropts(msize(6-pt) msymbol(circle)) noohetstats ///
    noghetstats noosigtest noohomtest nogwhomtests nogbhomtests  nonotes ///
    xline(0, lpatter(solid) lcolor(black*0.5)) columnopts(_esci, supertitle({&beta}) ///
    title(95% CI))   hruleopts(lcolor(none))  coltitleopts(justification(center)) xline(-99)
    
    
    *! plot the results + other information
    *! results are no longer aligned - see the red line at position -94
    
    meta forest biomarker  _plot _esci p_value, cibind(parentheses) ///
    overallopts(size(zero) color(white)) nowmarkers noomarker ///
    markeropts(msize(6-pt) msymbol(circle)) noohetstats noghetstats ///
    noosigtest noohomtest nogwhomtests nogbhomtests  ///
    nonotes xline(0, lpatter(solid) lcolor(black*0.5)) ///
     columnopts(_esci, supertitle({&beta}) title(95% CI))   ///
     hruleopts(lcolor(none))  coltitleopts(justification(center)) xline(-94)

  • #2
    Code:
    bodyopts(justification(left))

    Comment


    • #3
      Fantastic, Andrew. I have read the manual several times, but missed that part. Thank you so much again.
      all the best,
      Tiago

      Comment

      Working...
      X