SAS笔记#GPLOT绘制折线图曲线图

本文介绍了如何使用SAS进行数据可视化,包括制作简单折线图,通过PLOT2语句叠加图形,以及利用分组变量创建多线条图。学习者将学会如何设置符号属性、坐标轴配置和创建复杂数据可视化。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


前言

和数据报表一样,图表也是展现数据的重要方法,图表的直观效果是数据报表无法替代的,同时图表能够比文字更简洁的表达我们想要表达的内容。


一、制作简单折线图

代码如下:

symbol value=dot cv=red interpol=join ci=blue;
proc gplot data=ex.sales_year;
	title 'Yearly Amount in North America';
	plot N_Amount*year;
run;
quit;
goptions reset=all;

在这里插入图片描述
注:goptions reset=all语句是将图像的颜色,线型,字体等设置恢复默认设置,防止在一个文件中多次画图出现不必要的错误。
分析:symbol语句是设置散点图属性的,少了symbol语句则默认是散点图,symbol后面value控制点样式,cv控制着点的颜色,Interpol代表插值的方法,不写时默认为none,表示不作连线图,为join时表示按照点出现的顺序并用直线连接,下表列举了几种插值方法:

插值方法作用
NONE表示不作连线图,系统默认值
JOIN将数据按照数据集中出现的顺序用直线连接
SPLINE用光滑的插值曲线将数据点按照数据集中出现的顺序连接,并且使得曲线经过每一个点
SMnn用光滑的插值曲线来拟合数据点,曲线可以不经过数据点,nn取值0~99,取值越大,插值曲线的光滑程度越高
Rxyzzzmm根据数据点做回归线,x表示回归,取值为L,Q,C;y表示回归线是否过数据线,取值为0,1;zzz表示置信限,取值为CLM,CLI;mm表示置信水平
NEEDLE表示针对每一个点画一条从点到横坐标连线
STEPxyz制作阶梯图,x表示数据点在阶梯上的位置,取值为L,R,C;y表示是否用竖线连接各个阶梯;z表示是否对数据横坐标 变量排序

下面总结了一些symbol语句常用的连线属性

选项作用
width=n 或 w=n指定连线的粗细
line=线型 或 l=线型指定连线的线型
ci=连线的颜色指定连线的颜色
color=颜色 或 c=颜色指点连线和散点的颜色

二、使用PLOT2语句绘制叠加图形

使用plot2语句可以为其所指定的纵坐标变量的右侧设立一条垂直坐标轴。
代码如下:

axis1 order=(1990 to 2012 by 5) minor=(color=blue number=1);
axis2 order=(13000 to 20000 by 1000) minor=(color=blue number=1 height=0.25);
symbol1 value=dot cv=red interpol=join ci=red;
symbol2 value=dot cv=red interpol=join ci=blue;
proc gplot data=ex.sales_year;
	title 'Yearly Amount in North America';
	plot N_Amount*year /overlay legend haxis=axis1 vaxis=axis2;
	plot2 N_Transactions*year/legend;
run;
quit;
goptions reset=all;

在这里插入图片描述

分析:axis语句可以设置坐标抽的属性,order用来设置主刻度的属性,minor用来设置次刻度的属性(例如米m次刻度就是分米dm),axis1中order括号表示坐标抽的值从1990到2012的,并且每间隔5年去一个值,minor括号color代表颜色,number表示只显示一个次刻度,height代表次刻度在坐标抽的高度haxis代表很坐标的属性,vaxis代表纵坐标的属性。下面列举了axis语句常用选项:

选项作用
order指定主刻度显示的值
major指定主刻度的显示属性
minor指定次刻度的显示属性
length指定坐标轴的长度
label指定坐标轴标签属性
value指定坐标轴上主刻度的显示文字以及属性

三、使用分组变量绘制多条连线图

代码如下(示例):

axis1 order=(1990 to 2012 by 5) minor=(color=blue number=1);
axis2 minor=(color=blue number=1 height=0.25);
symbol2 value=: interpol=join ;
	proc gplot data=ex.sales_year_by_area;
	title 'Yearly Amount Serious By Area';
	plot Amount*year=area/ haxis=axis1 vaxis=axis2;
run;
quit;
goptions reset=all;

在这里插入图片描述

分析:Amount*year=area中的area为分类数据,gplot会自动根据area不同的值在一个画板上绘画对应折线图,此时的图注也会自动添加上。


提示: 本文章内容来自《深入解析SAS》第五章----数据汇总与展现,详细内容可自行了解阅读。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值