SAS中文论坛

 找回密码
 立即注册

扫一扫,访问微社区

查看: 3635|回复: 6
打印 上一主题 下一主题

用SAS获取指定地方地图2

[复制链接]

10

主题

39

帖子

1070

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1070
QQ
跳转到指定楼层
楼主
发表于 2014-3-30 14:12:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
感谢坛友 @soporaeternus 的意见,通过百度地图的API接口可以实现中文来获取地图,具体代码如下:

  1. %macro sas_getMap(address,img_filename,zoom=11,width=800,height=600);
  2. data _null_;
  3.   length url $ 2048;
  4.   url = catt( 'http://api.map.baidu.com/staticimage?width=', &width, '&height=', &height, '&markers=', "&address",
  5.     '&zoom=',&zoom);
  6.   url = transtrn(trim(url), ' ', '%20');
  7.   call symputx('REQUEST_URL', url);
  8. run;
  9. filename img_fref &img_filename;
  10. proc http out = img_fref url = "%superq(REQUEST_URL)" method = "GET";
  11. run;
  12. %mend;
复制代码

程序参数说明:
1. 必输参数:地址;中文地址;
2. 必输参数:图片输出路径;
3. 可选参数:放大级别,默认值为11,范围3-18;
4. 可选参数:图片宽度,默认值为800,最大支持1024;
5. 可选参数:图片高度,默认值为600,最大支持1024;


测试1:

  1. %sas_getMap(广州大学城,"C:\temp\tianhe.png",zoom=18)
复制代码



测试2:
  1. %sas_getMap(北京天安门,"C:\temp\beijing.png",zoom=18)
复制代码



测试3:
  1. %sas_getMap(广东工业大学龙洞校区,"C:\temp\tower.png",zoom=18,width=1024,height=768)
复制代码



更多详细的设置请参见百度地图API的说明:http://developer.baidu.com/map/static-1.htm




最后再给大家分享一个关于PROC HTTP的另外一个功能,就是下载文件:
以百度网盘中的文件为例,通过点击下载得到它的下载路径,就可以下载了,具体如下所示:

  1. filename _bcout "C:\temp\test.mp3";
  2. proc http method="get"
  3. url='http://bj.baidupcs.com/file/67617060138192bc3a210d3eadf6da8b?xcode=b270263d72569130d63494ff60034e86aa7c5d24b961ac16&fid=2031017424-250528-2939263134&time=1396153071&sign=FDTAXER-DCb740ccc5511e5e8fedcff06b081203-nX0P3vyGEWXi3w7Csxkv7eMNGpQ%3D&to=bb&fm=N,B,U,nc&newver=1&expires=1396153671&rt=sh&r=164409818&logid=1087617377&sh=1&vuk=2031017424&fn=The%20Rock%208.mp3'
  4. out=_bcout;
  5. run;
复制代码


下载后文件如下所示:



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
分享到:  微信微信
收藏收藏
回复

使用道具 举报

0

主题

1

帖子

22

积分

新手上路

Rank: 1

积分
22
沙发
发表于 2014-3-30 16:30:47 | 只看该作者
谢谢,学习了!
回复 支持 反对

使用道具 举报

6

主题

31

帖子

293

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
293
板凳
发表于 2014-3-30 18:25:41 | 只看该作者
@soporaeternus  可是元老级人物。
SAS资源
1. SAS 微信:mysasnet
2. SAS QQ群:348941365
3. SAS Blog:编程|统计|医药
回复 支持 反对

使用道具 举报

10

主题

39

帖子

1070

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1070
QQ
地板
 楼主| 发表于 2014-3-31 23:22:49 | 只看该作者
webgu 发表于 2014-3-30 18:25
@soporaeternus  可是元老级人物。

soga! 膜拜!
回复 支持 反对

使用道具 举报

0

主题

2

帖子

22

积分

新手上路

Rank: 1

积分
22
5#
发表于 2014-4-2 09:19:05 | 只看该作者
很不错的功能!谢谢分享!
回复 支持 反对

使用道具 举报

0

主题

2

帖子

22

积分

新手上路

Rank: 1

积分
22
6#
发表于 2014-4-2 11:36:49 | 只看该作者
百度地图的高级模式参数该如何调用?
回复 支持 反对

使用道具 举报

10

主题

39

帖子

1070

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1070
QQ
7#
 楼主| 发表于 2014-4-2 13:01:25 | 只看该作者
3554699 发表于 2014-4-2 11:36
百度地图的高级模式参数该如何调用?

将那些高级模式参数加进url就可以了!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|SAS中文论坛  

GMT+8, 2024-11-22 14:10 , Processed in 0.114173 second(s), 23 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表