I am using SAS and SPSS for a growth curve analysis and I would like to create publication quality growth curves. Below is an example of SAS code for one of my interaction models and coresponding fitted model plots:
proc mixed data=long noclprint covtest method=REML;
class PID Intervention;
model A_Score= Time Time*Time Intervention Intervention*Time Intervention*Time*Time / solution;
random intercept Time Time*Time / sub=PID type=un gcorr;
store out=MixedModel_A;
run;
ods html style=Statistical;
proc plm restore=MixedModel_A noclprint;
effectplot fit(x=Time plotby=Intervention);
effectplot slicefit(x=Time sliceby=Intervention);
effectplot slicefit(x=Time sliceby=Intervention) / clm;
run;
I have looked at a lot of journal articles that present growth curve figures, and it is clear to me that many of them that use SAS are doing something differently from me in creating those figures, other than just selecting a different ODS HTML output style. That is, the formatting of their figures looks different than what I am able to get SAS to produce. For example, the growth curves presented in this article does not have grid lines on the plot area, and they have data point markers on the growth curves at the data collection time points: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3042028/
Does anyone know if there are things I can do differently in order to get closer to producing publication quality figures? I understand that some degree of manual formatting and editing will be needed, but if it is easy to get software to produce figures that are more publication-ready, I would like to know how to do so. I can easily use SAS or SPSS, as well as Excel with output from either, if relevant. Thank you
Based on the reply comments combined with additional research, I have found an answer. The steps include:
Here is example code:
*****Mixed model, storing output as dataset;
proc mixed data=long noclprint covtest method=REML;
class PID Condition;
model SA_Score= Time Time*Time Condition Condition*Time Condition*Time*Time / solution;
random intercept Time Time*Time / sub=PID type=un gcorr;
store out=MixedModel_SA;
run;
*****Turn on ODS output to create dataset from results output object (output object name from SAS system=SliceFitPlot);
ods output SliceFitPlot=Plot_SA;
*****Run proc plm to create single panel graph with two series (interaction chart);
proc plm restore=MixedModel_SA noclprint;
effectplot slicefit(x=Time sliceby=Condition);
run;
*****Close output dataset creation command;
ods output close;
*****Basic formatting on dataset for use with SGPLOT;
data Plot_SA1;
set Plot_SA;
*Program time as 1-5;
Time=_XCONT1+1;
*Separate out the two different series for use in interaction graph (Tx vs TAU);
if _INDEX=1 then SA_TAU=_PREDICTED;
if _INDEX=2 then SA_Tx=_PREDICTED;
run;
*****Create plot;
proc sgplot data=Plot_SA1;
TITLE 'SA Score Growth Curve Model by Intervention Group';
*LINES;
SERIES X=Time Y=SA_Tx / LEGENDLABEL = 'Treatment Group'
/*MARKERS*/ LINEATTRS = (THICKNESS=2 COLOR=CX0000CF PATTERN=Solid); *med dark blue;
SERIES X=Time Y=SA_TAU / LEGENDLABEL = 'Control Group'
/*MARKERS*/ LINEATTRS = (THICKNESS=2 COLOR=CXCF0000 PATTERN=LongDash); *med dark red;
XAXIS LABEL = 'Time'
MIN = 1
MAX = 5;
YAXIS LABEL = 'SA Score'
GRID VALUES = (0 to 2 by .2) ;
KEYLEGEND / LOCATION=INSIDE POSITION=TopRight ACROSS=1;
run;
In actuality, I will need to do additional formatting to get the graph publication ready, for which extensive SGPLOT documentation is available online.