R 绘制中国地图不同方法的比较-经管之家官网!(R.E.A. Holdings plc: Half yearly results),- 高清在线观看

最近关注R绘制地图的方法,跟大家分享一下。总体来说,有很多种绘制地图的方法,常用的方法主要是基于以下三种方法来绘制地图:(1)ggplot2;(2)maps;(3)googleVis;还有一个程序包值得推荐:REmap
当然还有很多其他的方法可以绘制地图,详见:https://rstudio-pubs-static.s3.a ... 8efc0a07d67208.html
简单总结几种常用程序包绘制地图的优缺点:
(1)ggplot2:优点,可灵活调整图形的任意组成成分,同时可在图形上添加2个或多个维度的数据(如在地图上同时显示总人口数和每千人卫生人口数,详见下面的示例2),其他程序包通常只能绘制一个维度的数据(总人口数或每千人卫生人口数,详见下面的示例1);缺点,参数较多,较难短时掌握。同时绘制地区前需先下载shp文件,如果想获得省市级地区的最新二级地图的shp文件,通常很难。
强烈推荐ggplot2官方学习网址:http://docs.ggplot2.org/current/。
另外推荐余光创的两篇博文:http://guangchuangyu.github.io/2014/05/use-ggplot2/ 及 http://guangchuangyu.github.io/2 ... ing-started-with-r/
(2)maps:优点,相对灵活,不加赘述;缺点,中国的基础地图中,没有将四川和重庆区分开,这是被无数maps的中国地图使用者最为诟病的地方。其他地区的基础地图是否有类似问题,不得而知。
(3)googleVis:优点,功能由起初的主要绘制地图的功能,逐步扩展,已经演变成非常强大的可视化工具,推荐学习网址:http://cran.r-project.org/web/pa ... leVis_examples.html 。缺点:绘制基础地图方法,仍然只能绘制一维的数据。同时绘制的地图依赖google地图,所以如果不能显示google地图,也就不能绘制地图。
(4)REmap:国人开发的基于百度地图Echart。优点,绘制地图方便快捷,省市级地区的二级地图非常精准,并可绘制炫酷的迁徙图和热图,推荐学习网址:http://lchiffon.github.io/REmap/ ;缺点,同googleVis一样,只能绘制一维的数据,同时地图上只能显示中文地名,所以想让它来发英文文章,估计就不行了。目前主要用它来获取精细的经纬度信息,在获取经纬度信息上,中文地名能很好识别,部分英文省市级名称也能识别,但有限。
回到正题,以下分别介绍ggplot2和REmap绘制中国地图的方法代码:
在绘制地图前准备以下数据:
1、中国省级行政区划地图矢量图shp格式(province_2004.shp),下载网址:
https://yunpan.cn/crZmPQr38N6mt访问密码 773c
同时需要配套数据province_2004.dbf和province_2004.shx
province_2004.dbf 文件下载网址
https://yunpan.cn/cYgzwyvghBGte访问密码 b135
province_2004.shx 文件下载网址
https://yunpan.cn/cYgzqSG9Fk8Qu访问密码 d771
其他比较代表性的下载来源是GDM网站,网址:http://gadm.org/download,但是从GDM网站下载的中国地图没有台湾。
2、流行病学样本数据(example.csv),下载网址:
https://yunpan.cn/crZm3wWUfVfaU访问密码 8fe7
说明:NAME,shp地图对应的中国省份名称
NAME1,REmap绘制中国地图对应的省份名称
NAME2,googleVis绘制中国地图对应的省份名称编码
Population:2012年中国各省份对应人口数,单位:10000人
Dct_nur:2012年中国各省份对应的平均每千人医护人员数
编码如下:
  1. library(maptools) # A package for building maps
  2. library(ggplot2) # To have ggplot2 graphic interface
  3. library(plyr) # To manipulate data
  4. library(graphics) # Set par()
  5. library(REmap) # Get the longitude and latitude of regions

  6. setwd("D:/R practice/R for map")

  7. # Prepare your epidemiological data
  8. mydata <- read.csv("D:/R practice/R for map/example.csv")

  9. # Method 1: Remap

  10. province <- as.character(mydata$NAME)
  11. province <- data.frame(get_geo_position (province))
  12. str(province)
  13. names(province)[3] <- c("NAME" )

  14. china_data_REmap <- join(mydata,province,type="full",by="NAME")

  15. provinceC_REmap <- china_data_REmap[
  16. names(china_data_REmap) %in% c("NAME1", "Dct_nur")]

  17. remapC(provinceC_REmap)


  18. # Method 2: ggplot2

  19. china_map <- readShapePoly("D:/R practice/R for map/CHN map/2004/province_2004.shp")
  20. china_map1 <- china_map@data
  21. china_map1 <- data.frame(china_map1,id=seq(0:36)-1)
  22. china_map2 <- fortify(china_map)
  23. china_map3 <- join(china_map2, china_map1, type="full",by="id")
  24. names(china_map3) [13]<- c("NAME")
  25. china_map4 <- join(china_map3, mydata, type="full",by="NAME")

  26. # example 1
  27. ggplot ()+
  28. geom_polygon(data=china_map4,aes(x=long,y=lat,group=group,fill=Dct_nur),colour="gray40")+
  29. scale_fill_gradient(name="Numbers of doctor and nurse, 1/1000",low="white",high="red")+
  30. geom_text(data =china_data_REmap,aes(x=lon,y=lat,label=province),colour="black",size=5,
  31. vjust=0,nudge_y=0.5)+
  32. labs(title ="Numbers of doctor nand nurse per 1000 persons in China")+
  33. coord_map ("polyconic")+
  34. ylim (18, 54)+
  35. theme(
  36. panel.grid = element_blank(),
  37. panel.background = element_blank(),
  38. plot.title = element_text(size = 25),
  39. axis.title.x = element_blank(),
  40. axis.title.y = element_blank(),
  41. axis.text = element_blank(),
  42. axis.ticks = element_blank(),
  43. axis.title = element_blank(),
  44. legend.position = c(0.15,0.2)
  45. )

  46. # example 2-1 : Bubble chart on map
  47. ggplot ()+
  48. geom_polygon(data=china_map4,aes(x=long,y=lat,group=group,fill=Dct_nur),colour="gray40")+
  49. scale_fill_gradient(name="Numbers of doctor and nurse, 1/1000",low="white",high="red")+
  50. geom_point(data=china_data_REmap,aes(x=lon,y=lat,size=Population),fill="blue",colour="red",
  51. alpha=0.6,shape=21)+
  52. geom_text(data =china_data_REmap,aes(x=lon,y=lat,label=province),colour="black",size=5,
  53. vjust=0,nudge_y=0.5)+
  54. labs(title ="Numbers of doctor nand nurse per 1000 persons in China")+
  55. coord_map ("polyconic")+
  56. ylim (18, 54)+
  57. theme(

    R 绘制中国地图不同方法的比较-经管之家官网!(R.E.A. Holdings plc: Half yearly results)

  58. panel.grid = element_blank(),
  59. panel.background = element_blank(),
  60. plot.title = element_text(size = 25),
  61. axis.title.x = element_blank(),
  62. axis.title.y = element_blank(),
  63. axis.text = element_blank(),
  64. axis.ticks = element_blank(),
  65. axis.title = element_blank()
  66. )

  67. # example 2-2 : Bar chart on map
  68. ggplot ()+
  69. geom_polygon(data=china_map4,aes(x=long,y=lat,group=group,fill=Dct_nur),colour="gray40")+
  70. scale_fill_gradient(name="Numbers of doctor and nurse, 1/1000",low="white",high="red")+
  71. geom_errorbar(data=china_data_REmap,aes(x=lon, ymin=lat, ymax=lat + Population/1500 ),
  72. colour="blue",size=5, width=0,alpha=0.5)+
  73. geom_text(data =china_data_REmap,aes(x=lon,y=lat,label=province),colour="black",size=5,
  74. vjust=0,nudge_y=0.5)+
  75. labs(title ="Numbers of doctor nand nurse per 1000 persons in China")+
  76. ylim (18, 54)+
  77. theme(
  78. panel.grid = element_blank(),
  79. panel.background = element_blank(),
  80. plot.title = element_text(size = 25),
  81. axis.title.x = element_blank(),
  82. axis.title.y = element_blank(),
  83. axis.text = element_blank(),
  84. axis.ticks = element_blank(),
  85. axis.title = element_blank()
  86. )

  87. library(googleVis)

  88. # Method 3: googleVis

  89. G1 <- gvisGeoMap(mydata,
  90. locationvar='NAME2',
  91. numvar='Dct_nur',
  92. options=list(region='CN'))
  93. plot(G1)

  94. G2 <- gvisGeoChart(mydata,
  95. locationvar='NAME2',
  96. colorvar='Dct_nur',
  97. options=list(region='CN',
  98. displayMode="regions",
  99. resolution="provinces",
  100. colorAxis="{colors: ['yellow','red']}" ))
  101. plot(G2)
复制代码
REmap输出图形:
ggplot2示例1输出图形:
ggplot2示例2-1输出图形:
ggplot2示例2-2输出图形:
因为无法显示google地图,所以googleVis的输出无法查看
其他利用R绘制中国地图的重要参考学习网址:
http://yihui.name/cn/2008/10/china-map-and-city-locations-with-r/
http://www.kevjohnson.org/making-maps-in-r/
http://cos.name/2013/01/drawing-map-in-r-era/
http://cos.name/2014/08/r-maps-for-china/
http://cos.name/2009/07/drawing-china-map-using-r/
http://www.r-bloggers.com/lang/chinese/1010
欢迎交流,^_^
郑重声明:用户在财富号/股吧/博客等社区发表的所有信息(包括但不限于文字、视频、音频、数据及图表)仅代表个人观点,与本网站立场无关,不对您构成任何投资建议,据此操作风险自担。请勿相信代客理财、免费荐股和炒股培训等宣传内容,远离非法证券活动。请勿添加发言用户的手机号码、公众号、微博、微信及QQ等信息,谨防上当受骗!

来源:雪球App,作者: 股知录,(https://xueqiu.com/4929707997/236163866)

11月24日,发行,上市,合理市价都在130元附近。

我有,差不多就那个价,要是只给125元,我也走。

这两天看完一本和资管相关的书,发现有些东西挺值得分享。

其中最值得关注的,大约是银行r1、r2级别的理财产品,风险到底有多大?

前几天债券市场大跌,很多人买的债券基金亏钱,甚至底层资产为债券的银行理财也开始亏钱。

银行理财都亏钱了啊!

我当时一慌,就把手里的银行理财给火速赎回了。没有办法,蚊子腿也是肉,闲钱自然还是需要打理的。但我又不可能花太多心思研究收益几个点的银行理财,所以只有马马虎虎买了。

把理财赎回后,我看了下过去一段时间的收益情况,发现我买的这款银行理财一直没亏钱,只是有几天时间收益下降了而已。

心下一稳,看来我还是毛躁了啊。虽然对银行理财不熟,但也应该对自己的稳妥多些信心才对。

之所以这么毛躁,是我记得这款理财产品是r2级别的,不保本,有风险。而且底层资产有三类,其中一类就是债券。也就是造成这波理财产品亏钱潮的罪魁祸首。

但反过来看,这个理财没亏钱,说明其持有的是风险最低的国债以及超短期债券,且配比均衡,实现了整体的稳健。

知道这些后,我沉默了。

钱放银行存活期,太不划算。存定期呢,利率还是太低。于是我还是准备吃回头草,把理财产品买回来。

结果,好家伙,竟然没有额度了,买不进去。

上述算是亲身体会R2产品了。还是说说R1至R5产品的风险吧。

r1-r5的风险评级,其实还是比较有用的。

虽然如今银行理财产品都不保本,但r1基本不会亏钱,即便亏钱,比例也会很小很小。

r2预期收益相对高些,当然,亏钱的可能性也相对更大。但通常来说,r2产品的亏损幅度不会超过10%。如果出现了意外亏损,那大概率是发行理财的机构实力不行,出现了管理风险。

其它级别的理财产品,大体上按此类推。级别越高,亏钱的可能性越大,当然,赚大钱的概率也就越大。

需要注意的是,我们买银行理财的时候,通常看r1,r2等的介绍,都是说预期收益多少,不会说预期亏损多少。这个看起来让人没底,但实际上是正常的。

因为预期收益确实就是预期收益,买了这款产品,差不多确实能达到预期收益的收益。只是银行不敢给你打保票。不然,打破刚兑,让理财市场市场化就成了一纸空文。

针对亏损的可能性,也有人会钻牛角尖,说他可能成为亏钱那个人(你们都赚,就我亏?)。

这么说吧,预期收益是统计结果。比如我手上10000个橙子,其中出现甜橙的概率是80%,那基本就意味着有8000个橙子是甜的,只有2000个橙子不甜。具体单独的一个甜不甜,这个我就不知道了。就像你每吃10个橙子,基本里面有8个是甜的,即便不甜,也不存在误吃毒橙,毒发身亡的可能性。

上述的概率、预期,都是属于统计范畴。并不绝对,但大体上是这样的。

我们再接着说预期收益。

有这样一句话,叫风险不是和收益成正比,风险是和预期收益成正比。

高风险、高回报是我们常听的一句话。但这句话并不严谨,准确的说法,应该是高风险,伴随的是高回报的可能性,而不是高回报本身,因为可能出现高亏损。

也就是,风险和预期收益成正比,并不是风险和收益成正比。

你如果做一件高风险的事情,那也必然伴随着与之相应的潜在收益。不然,那就是犯傻。如果你做一件高风险的事情,却不清楚其高收益的可能性,那大概就是赔本买卖。

说些极端点的例子。

张子强知道绑架李嘉诚的儿子很危险,但他也清楚绑架李嘉诚儿子的收益在哪里。然后策划好了去抢,那就是“高风险、高收益”。

《枪王之王》中,古天乐不知道抢银行的收益在哪里,结果半路上碰到了抢银行的机会,就头脑一热抢了运钞车。结果钱花不出去,最终付之一炬。那就是“高风险、低收益”。

不管是买低风险银行理财,还是高风险银行理财,或是直接买股票,都要清楚其风险和预期收益,才能准确把握。

对了,后来我看了下,发现我买的银行理财,基本都是R1。我还是很怕这些亏钱的。正是因为买的风险最低品种,且投入的钱也不多,所以就没花太多心思。

就像这两年的可转债一样,因为中签率不高,整体回报率下降,所以我花在上面的精力已经很少了。

知道大概率能捡些钱,那就行了。

知道最低风险的银行理财,大概率不亏,那就行了。

更多的时间,还不如多看看书。