I am using proc transreg (splines and knots) to generate a spline regression fit. I have tried many methods to modify the plot with no results.
My plot is similar to this plot from the SAS user guide:
The SAS code used to generate the plot above is
title2 'A Cubic Spline Fit with Knots at X=5, 10, 15';
proc transreg data=a; model identity(y) = spline(x / knots=5 10 15); run;
How do I modify the plot so that
1) only the fit line and its 95% CI are left on the graph? I wanted to get rid off the observed data points and the 95% CI for the observed.
2) How do I change the y axis scale to [0, 30]
Your help is greatly appreciated!
If you turn on ods trace, in front of your code:
ods trace on;
Then run the code it will show you the components which are created by the procedure. You should then be able to recreate these in GTP/SGplot, and then change them as much as you like. For example:
Thank you I will try this!
It is easier to help if you provide the full program with data.
Here is what you can do. Enable ods trace using 'ODS TRACE ON;' In the log, find the name of the graph and the template used for this graph. Now, you can modify the template itself (carefully) and remove the CLM option and the SCATTERPLOT statement. Add the options to set the axis range you want. Compile and save the template to your SASUSER.TEMPLAT itemstore. Now, rerun the TRANSREG procedure and you should get the graph you desire.
Alternatively, save the data created by the procedure for this graph using ODS OUTPUT obj-name=dataset name. Then, use SGPLOT to create the graph.
Thank you very much i will try this.
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.