y axis
There are a couple y-axis options can affect the axis rendering. consider offsetmin
or a tweaked list in the values=
formula line
There is no formula
statement in SGPLOT
so you have to create an auxiliary column for drawing the formula in a series
. Some times you can align the x's of the data with the x's of the formula. However, for the case of wanting a higher density of x's for the formula you stack the scatter and formula data. Don't get hung up on the chunks of missing values and any feelings of wastefulness.
I am not sure where your curve fit comes from, but statistical graphics (the SG in SGPLOT) has many features for fitting data built into it.
* make some example data that looks something like the fit curve;
data have;
do x = 0.03 to 1 by 0.0125;
y = ( 160.3 * x ) / ( 0.0477 + x ) ;
y + round ( 4 * ranuni(123) - 8, 0.0001);
output;
x = x * ( 1 + ranuni(123) );
end;
x = 0.02;
y = 51;
output;
run;
* generate the series data for drawing the fit curve;
* for complicated formula you may want to adjust step during iteration;
data fit;
step = 0.001;
do x = 0 to 1;
y = ( 160.3 * x ) / ( 0.0477 + x ) ;
output;
* step = step + smartly-adjusted-x-increment;
x + step;
end;
keep x y;
rename x=xfit y=yfit;
run;
* stack the scatter data and the curve fit data;
data have_stack_fit;
set have fit;
run;
proc sgplot data=have_stack_fit;
scatter x = x y = y;
series x = xfit y = yfit / legendlabel="( 160.3 * x ) / ( 0.0477 + x )";
yaxis values = (0 60 to 160 by 20) ;
run;