turn on suggestions

Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.

Showing results for

Find a Community

- Home
- /
- SAS Programming
- /
- SAS/GRAPH and ODS Graphics
- /
- How to modify the default plot in SAS

Topic Options

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

08-13-2015 09:53 AM

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!

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

Posted in reply to LizC

08-13-2015 10:26 AM

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:

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

08-14-2015 10:10 AM

Thank you I will try this!

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

Posted in reply to LizC

08-13-2015 10:28 AM

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.

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

Posted in reply to Sanjay_SAS

08-14-2015 10:15 AM

Thank you very much i will try this.