zoukankan      html  css  js  c++  java
  • 闲来无事,在微信推文中看到一个炫酷的具有动态特效的中国地图,是用R语言做的,于是尝试了一下

    最终的效果图如下:


    1、环境准备

    既然是用R语言作图,那么这几个软件是一定需要安装的:

    • R语言的编译器:https://mirrors.tuna.tsinghua.edu.cn/CRAN/index.html (这里就提前给大家避坑一下:R尽量不要安装最新的4.0.4,安装完4.0.4后期你会发现总会出现一些莫名其妙的问题,比如安装各种包的时候出现混乱,又或者是命令窗口的结果都变成了Unicode编码。。等等,所以推荐大家安装之前的4.0.3版本,至少没有那么多的bug)
      官网找了一圈没找到之前版本的链接,就推荐一位知乎网友分享的下载链接:https://www.zhihu.com/question/445662950
    • Rstudio开发软件:https://www.rstudio.com/
    • 和Rtools(为了后面的包的install方便,这个工具是有必要安装的):不然你在RStudio中每下载安装一个包,都会出现一些前置的包没有安装的情况,有了它以后,就会自动地将一些前置包都安装上;

    2、需要安装的包:

    第一步中的R语言的环境配置完毕,但只是安装完这些软件,是不可能出现上图片中的效果:

    • devtools :只需要普通的安装命令install.package("devtools") 即可完成;
      (如果你前面没有安装Rtools,可能又让你安装callr包,装callr包的时候,又要让你安装processx包,或者出现一些包的版本不兼容的问题,反正这些问题我是都遇到了,叫人头大。。)
    • REmap :这个包必需要用到devtools中的命令进行安装,这里是有两个方法安装这个包的,
    1. 在GitHub上将安装包的.zip文件下载到自己的电脑上,然后使用devtools::install.local(".zip文件的路径")命令进行安装
    2. 直接使用devtools::install.github("lchiffon/REmap")命令进行安装,(这里注意的就是镜像设置成一个合理的镜像,不然挺慢的)

    3、进一步配置:

    网上所浏览的步骤前篇一律都是在上述步骤完成之后,就直接使用代码:

      library(REmap) 
      生成一个data.frame变量;
      remap(data.frame变量)
    

    就出来了图片中的效果,
    但是我这边出现了报错,意思是说我没有个人百度地图的AK。
    所以在这之前应该还有一步就是要能成功连接上百度地图的API,因此你还需要在百度地图的开发者平台上申请一个百度地图的SK,在申请这个SK之前你还得成功认证百度地图的个人开发者,否则申请的SK也是无效的。
    为了测试我的AK是否有效,我又安装了一个叫baidumap的包:https://blog.csdn.net/lpwmm/article/details/79202592 和REmap的安装过程类似;
    在这一步完成之后,理论上的代码应该是:

      library(REmap) 
      options(remap.ak="balabalabala")    
      生成一个data.frame变量;
      remap(data.frame变量)
    

    (这里的AK就不展示了,因为涉及到个人隐私,大家最好都自己动手试试,个人开发者认证的环节很快,几分钟就行了)

    运行代码之后是在我C盘的temp文件夹生成了一个html文件,打开这个文件就可以看到动态的效果见最开始。

    以上是我的路径,有需要改进的地方请大家指出,百度上所能搜索到的关于R语言的学习资源非常有限,主要是依赖于微信搜索和谷歌搜索,中间走过很多弯路,不过总算结果还不错,欢迎大家多多交流

    end

  • 相关阅读:
    hihocoder-1014 Trie树
    51Nod-1265 四点共面
    cf466B Wonder Room
    2014.9.13模拟赛【数位和乘积】
    2014.9.13模拟赛【环上的游戏】
    bzoj2719[Violet 4]银河之星
    wikioi1450 xth的旅行
    poj2352 stars
    2014.9.6模拟赛【藏妹子之处】
    2014.9.6模拟赛【工资】
  • 原文地址:https://www.cnblogs.com/ys-01/p/14597542.html
Copyright © 2011-2022 走看看