msgbartop
List for SAS fans and programmer
msgbarbottom

28 9月 15 SAS绘图即学即用系列连载4.2-面图


SAS绘图即学即用系列连载4.2 –面积图: 以下代码 可以拷贝到SAS编辑器中,直接使用;稍作更改便可得到自己满意的图形。以下来自一本关于SAS绘图的书稿(未出版草稿),均为本人原创。 完整代码详见SAS资源资讯列表  www.saslist.net

4.2  面图

4.2.1 面积图

使用PATTERN=改变面积填充区的属性。

sample421

1
2
3
4
5
6
7
8
9
10
FILENAME file "d:\SAS_charts\sample421.png";
goptions reset=all device=png gsfname=file/*设置图片格式和存放点*/
hsize=8cm vsize=6cm ; /* 设置绘图区域大小 */
symbol value=none interpol=j ; /* 设置点属性 */
pattern1 c=orange;
proc gplot data=sashelp.stocks;
plot high*date /areas=1;
where stock="IBM" and ('01feb90'd <= date <= '01dec92'd);
run;
quit;

4.2.2 点面

粗边面积图

 

sample420

1
2
3
4
5
6
7
8
9
10
FILENAME file "d:\SAS_charts\sample422.png";
goptions reset=all device=png gsfname=file/*设置图片格式和存放点*/
hsize=8cm vsize=6cm ; /* 设置绘图区域大小 */
symbol1 value=none interpol=j width=3 Color=red; /* 设置点属性 */
pattern1 c=orange;
proc gplot data=sashelp.stocks;
plot high*date high*date=1 /overlay areas=1 ;
where stock="IBM" and ('01feb90'd <= date <= '01dec92'd);
run;
quit;

4.2.3 分组面积图

sample422

1
2
3
4
5
6
7
FILENAME file "d:\SAS_charts\sample423.png";
goptions reset=all device=png gsfname=file/*设置图片格式和存放点*/
hsize=8cm vsize=6cm ; /* 设置绘图区域大小 */
symbol1 value=none interpol=j c=blue; /* 设置点属性 */
symbol2 value=none interpol=j c=red; /* 设置点属性 */
pattern1 c=blue;
pattern2 c=red;

proc gplot data=sashelp.stocks;
plot high*date=stock / areas=2 ;
where stock NE “IBM” and (’01feb90’d <= date <= ’01dec92’d);
run;
quit;

4.2.4 区域面积图 (高低区域)

sample423

1
2
3
4
5
6
7
8
9
10
11
12
FILENAME file "d:\SAS_charts\sample424.png";
goptions reset=all device=png gsfname=file/*设置图片格式和存放点*/
hsize=8cm vsize=6cm ; /* 设置绘图区域大小 */
symbol1 value=none interpol=j ; /* 设置点属性 */
symbol2 value=none interpol=j ; /* 设置点属性 */
pattern1 c=white;
pattern2 c=orange;
proc gplot data=sashelp.stocks;
plot low*date high*date /overlay areas=2 ;
where stock="IBM" and ('01feb90'd &lt;= date &lt;= '01dec92'd);
run;
quit;

4.2.5  其他

调整和修饰:点标记、参考线、修饰坐标轴

sample425

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
FILENAME file "d:\SAS_charts\sample425.png";
goptions reset=all device=png gsfname=file/*设置图片格式和存放点*/
hsize=12cm vsize=8cm ; /* 设置绘图区域大小 */
symbol1 value=none interpol=j c=gray; /* 设置点属性 */
symbol2 value=none interpol=j c=orange; /* 设置点属性 */
symbol3 value=none interpol=j c=red w=2;
pattern1 c=gray;
pattern2 c=orange;
axis1 order= ('01jan86'd to '01jan06'd by 1461) LABEL=( "Period") minor=none ; /*调整坐标轴的显示、改变轴标签内容*/
axis2 order= (0 to 250 by 50) LABEL=(angle=90 "") minor=none offset=(,0.4cm); /*调整坐标轴的显示、改变轴标签内容和位置*/
legend1 label=none
position=(top right inside) mode=share;
Title H=0.4cm font="Thorndale AMT/bold" "IBM's stock from '01JAN86' to '01JAN06' ";
Footnote justify=left "Data resource: sashelp.stocks" ;
proc gplot data=sashelp.stocks;
plot low*date high*date close*date=3 /overlay areas=2
haxis=axis1 vaxis=axis2
vref=50 to 200 by 50 lvref=1 CVREF=black WVREF=1
legend=legend1;
where stock="IBM" ;
run;
quit;

原创文章: ”SAS绘图即学即用系列连载4.2-面图“,转载请注明: 转自SAS资源资讯列表

本文链接地址: http://saslist.net/archives/420


17 8月 15 SAS绘图即学即用系列连载4.1-线图


by sxlion

 SAS绘图即学即用系列连载4.1 –曲线图: 以下代码 可以拷贝到SAS编辑器中,直接使用;稍作更改便可得到自己满意的图形。以下来自一本关于SAS绘图的书稿(未出版草稿),均为本人原创。 完整代码详见SAS资源资讯列表  www.saslist.net

4.1  线图

4.11 曲线图

sample411

1
2
3
4
5
6
7
8
9
FILENAME file "d:\SAS_charts\sample411.png";
goptions reset=all device=png gsfname=file/*设置图片格式和存放点*/
hsize=8cm vsize=6cm ; /* 设置绘图区域大小 */
symbol value=none interpol=j CI=orange width=3; /* 设置线点属性 */
proc gplot data=sashelp.stocks;
plot high*date;
where stock="IBM" and ('01feb90'd &lt;= date &lt;= '01feb91'd);
run;
quit;

4.12 分组曲线图

1
2
3
4
5
6
7
8
9
10
11
FILENAME file "d:\SAS_charts\sample413.png";
goptions reset=all device=png gsfname=file/*设置图片格式和存放点*/
hsize=8cm vsize=6cm ; /* 设置绘图区域大小 */
symbol1 value=none interpol=join CI=red width=2;
symbol2 value=none interpol=join CI=blue width=2;
symbol3 value=none interpol=join CI=orange width=2;
proc gplot data=sashelp.stocks;
plot high*date=stock;
where ('01feb90'd &lt; date &lt; '01feb91'd);
run;
quit;

 

4.13 双/多曲线图

sample414

1
2
3
4
5
6
7
8
9
10
11
FILENAME file "d:\SAS_charts\sample414.png";
goptions reset=all device=png gsfname=file/*设置图片格式和存放点*/
hsize=10cm vsize=8cm ; /* 设置绘图区域大小 */
symbol1 value=none interpol=join CI=red L=2 width=1; /*L:设置线型 */
symbol2 value=none interpol=join CI=orange L=1 width=2;
symbol3 value=none interpol=join CI=green L=3 width=1;
proc gplot data=sashelp.stocks;
plot high*date close *date low*date /overlay ;
where stock="IBM" and ('01feb90'd &lt; date &lt; '01feb91'd);
run;
quit;

4.14 双坐标曲线图

sample415

1
2
3
4
5
6
7
8
9
10
11
FILENAME file "d:\SAS_charts\sample415.png";
goptions reset=all device=png gsfname=file/*设置图片格式和存放点*/
hsize=10cm vsize=8cm ; /* 设置绘图区域大小 */
symbol value=none interpol=j CI=red width=1; /* 设置线属性 */
symbol2 value=none interpol=j CI=black width=1; /* 设置点属性 */
proc gplot data=sashelp.stocks;
plot high*date/vzero;
plot2 volume*date;
where stock="IBM" and ('01feb90'd &lt;= date &lt;= '01feb91'd);
run;
quit;

4.15  其他修饰: 

参考线、图例、坐标轴、标题、脚注

sample416

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
FILENAME file "d:\SAS_charts\sample416.png";
goptions reset=all device=png gsfname=file/*设置图片格式和存放点*/
hsize=12cm vsize=8cm ; /* 设置绘图区域大小 */
symbol1 value=none interpol=join CI=red width=2;/* 设置点属性 */
symbol2 value=none interpol=join CI=orange width=2;
symbol3 value=none interpol=join CI=green width=2;
axis1 order= ('01jan86'd to '01jan06'd by 1461) LABEL=( "Period") minor=none offset=(0.2 cm); /*调整坐标轴的显示、改变轴标签内容*/
axis2 order= (0 to 250 by 50) LABEL=(angle=90 "") major=none minor=none; /*调整坐标轴的显示、改变轴标签内容和位置*/
legend1 label=none
position=(top right inside)
mode=share;
Title H=0.4cm "Three company's stock from '01JAN86' to '01JAN06' ";
Footnote justify=left "Data resource: sashelp.stocks" ;
proc gplot data=sashelp.stocks;
plot close*date=stock /
haxis=axis1 vaxis=axis2
vref=50 to 200 by 50 lvref=1 CVREF=black WVREF=1
legend=legend1 ;
run;
quit;

原创文章: ”SAS绘图即学即用系列连载4.1-线图“,转载请注明: 转自SAS资源资讯列表

本文链接地址: http://saslist.net/archives/409


05 8月 15 SAS绘图即学即用系列连载4.0-点图


by sxlion

 SAS绘图即学即用系列连载4.0–点图: 以下代码 可以拷贝到SAS编辑器中,直接使用;稍作更改便可得到自己满意的图形。以下来自一本关于SAS绘图的书稿(未出版草稿),均为本人原创。 完整代码详见SAS资源资讯列表  www.saslist.net

4.0  点图

4.01 散点图

也可使用SYMBOL全局选项来改变点的属性。

sample401

1
2
3
4
5
6
7
8
FILENAME file "d:\SAS_charts\sample401.png";
goptions reset=all device=png gsfname=file/*设置图片格式和存放点*/
hsize=10cm vsize=8cm ; /* 设置绘图区域大小 */
symbol color=black value=dot ; /* 设置点属性 */
proc gplot data=sashelp.class;
plot weight*height/ vzero;
run;
quit;
4.02  分组散点图
sample402
1
2
3
4
5
6
7
8
9
FILENAME file "d:\SAS_charts\sample402.png";
goptions reset=all device=png gsfname=file
hsize=8cm vsize=8cm ; /* 设置绘图区域大小   */
symbol1 color=blue value=square  ;    /* 设置各分组数据散点的属性 */
symbol2 color=red value=squarefilled   ;
proc gplot data=sashelp.class;
plot weight*height=sex/vzero;  /* 使用绘图程序必须语句和选项*/
run;
quit;
4.03 双坐标轴 散点图

sample403

1
2
3
4
5
6
7
8
9
10
FILENAME file "d:\SAS_charts\sample403.png";
goptions reset=all device=png gsfname=file
hsize=12cm vsize=8cm ; /* 设置绘图区域大小 */
symbol1 color=blue value=squarefilled ; /* 设置各分组数据散点的属性 */
symbol2 color=black value=dot ;
proc gplot data=sashelp.class;
plot weight*age /vzero; /* 使用绘图程序必须语句和选项*/
plot2 height*age /vzero; /* 使用绘图程序必须语句和选项*/
run;
quit;
4.04   象限图 其他调整和修饰:点标记、参考线、修饰坐标轴、 标题 脚注

标记数据点和参考线

sample404

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
FILENAME file "d:\SAS_charts\sample404.png";
goptions reset=all device=png gsfname=file
hsize=10cm vsize=10cm ; /* 设置绘图区域大小 */
symbol1 color=orange value=dot H=2 POINTLABEL=("#name" JUSTIFY=center) ; /* 设置数据点的属性 */
axis1 order= (50 to 74 by 12) LABEL=( "身高/英寸") major=none minor=none; /*调整坐标轴的显示、改变轴标签内容*/
axis2 order= (40 to 140 by 50) LABEL=(angle=90 "体重/磅") major=none minor=none; /*调整坐标轴的显示、改变轴标签内容和位置*/
Title H=0.5cm font="MingLiU" "班级男生身高分布图" ;
Footnote justify=left "Data resource: sashelp.class" ;
proc gplot data=sashelp.class;
plot weight*height /
haxis = axis1 /*指定横坐标设置为前面全局设置坐标axis1*/
vaxis =axis2 /*指定纵坐标设置为前面全局设置坐标axis2*/
href = 62 chref=black /* 增加参考线*/
vref = 90 cvref=black;
where sex="男" ;
run;
quit;

原创文章: ”SAS绘图即学即用系列连载4.0-点图“,转载请注明: 转自SAS资源资讯列表

本文链接地址: http://saslist.net/archives/403


16 5月 12 SAS转置技巧 — 辅助变量


有时候数据分析的时候,总是需要把数据颠来倒去,从不同的角度分析N遍,SAS不但提供彪悍的统计分析程序,还提供了整理数据的辅助语句,每次都能把数据整理有条有理的。众所周知,SAS在清洗整理数据方面(ETL)的能力强大无比。很多SASor在垂涎和试用R语言提供新奇的分析和绘图模块时,不忘了先在SAS里面把数据整得服服帖帖的。

下面把自己遇到几个不那么常规的矩阵转置收集一下,它们都用到了增加辅助变量这一小技巧,尽管简单,其实都非常实用。

例1, 最近遇到一个需要对数据集进行操作的小问题,在SAS帮助proc transpose里面没找到例子,数据形式如下:

数据如下 (更多…)

原创文章: ”SAS转置技巧 — 辅助变量“,转载请注明: 转自SAS资源资讯列表

本文链接地址: http://saslist.net/archives/255


07 4月 12 世界-亚洲-中国省市县各级地图列表 by sxlion


Map charting, so easy ! 以后再也不担心画地图了。

图1,世界地图 (去掉南极)

美国版以大西洋为中心

图2,世界地图 (去掉南极)

中国版 以太平洋为中心

 

图3, 亚洲地图

 

图4,中国地图

(更多…)

原创文章: ”世界-亚洲-中国省市县各级地图列表 by sxlion“,转载请注明: 转自SAS资源资讯列表

本文链接地址: http://saslist.net/archives/235


18 4月 11 创建SAS宏变量的几类方法及举例


SAS里面除了变量,还有宏变量,其用途也非常广泛。创建宏变量的方法最早有shiyiming总结,翻了翻Rick Aster的Professional SAS Programming Shortcuts – Over 1,000 Ways To Improve Your SAS Programs,发现里面并没有总结这个问题,有点失望。

这里转载并补充姚志勇的SAS书里面的内容,使得更加完整和充实,便于大家以后方便选择使用,一共有四类方法:

(更多…)

原创文章: ”创建SAS宏变量的几类方法及举例“,转载请注明: 转自SAS资源资讯列表

本文链接地址: http://saslist.net/archives/122


20 9月 10 SAS数据集操作常见问题


1,怎么新建一个空数据集,即新建一个有数据结构但是没有值的数据集

2,怎么删掉一个数据集

3,怎么去掉一个数据集中有重复的记录或观察值

4,怎么得到一个数据集的所有观察值或记录的条数/个数

5,怎么对一个数据集按一个或几个变量进行排序

以上5个问题,每个问题,请给出10个或以上的不同的SAS代码来解决。

原创文章: ”SAS数据集操作常见问题“,转载请注明: 转自SAS资源资讯列表

本文链接地址: http://saslist.net/archives/76