剧情根据频率
回答
先写了一个名为“stackbox”是图(使用“矩形”)的平方在正确的地方堆栈的小功能。
下面是该函数的第一行:
stackbox <- function(x,y,n,size,maxheight=5){
- 其中“尺寸”是高度和盒的宽度,和“maxheight”让你有一个堆栈是5高或10高管他呢。
然后调用函数,该函数有案件每一个县。
确切位置在哪里是你在这个过程中卡住?
下面是完整的功能:
stackbox <- function(x,y,n,size,maxheight=5,...){
stackheight = seq(0,n,by=maxheight)
stackheight=diff(unique(c(stackheight,n)))
for(col in 1:length(stackheight)){
xl=rep(x+(col-1)*size,stackheight[col]) - (length(stackheight)/2)*size
yb=y+size*((1:stackheight[col])-1) - (max(stackheight)/2)*size
xr=xl+size
yt=yb+size
rect(xl,yb,xr,yt,...)
}
}
例子:
plot(1:10)
for(i in 1:10){
stackbox(i,i,i,3,size=.1,col="red",border="white")
}
要做到这一点的地图上,你需要SP和maptools包,和一个shapefile或其他地理空间数据源中有你的数据:
africa=readShapeSpatial(file.path(mapLib,"africa.shp"))
plot(africa,border="gray")
coords=coordinates(africa)
for(i in 1:nrow(africa)){
if(cases[i]>0){
stackbox(coords[i,1],coords[i,2],africa$cases[i],1,border="#606060",col="#0083FE")
}
}
我挑选,看上去有点像你原来的颜色。请注意,这些箱子都是绘图坐标,所以我必须让它们达到0.1度。你可能希望将你的地图转换成一个欧几里得投影(使用来自包:gdal的spTransform),然后他们将在这些单位中并且正确地呈正方形。
做漂亮的文本标签就像你原来是棘手,虽然...
作为替代方案,我建议一个气泡图,这是很容易使用GGPLOT2使用点几何之作。一个例子形成帮助页面(http://had.co.nz/ggplot2/geom_point.html):这导致
p <- ggplot(mtcars, aes(wt, mpg))
p + geom_point(aes(size = qsec))
:
气泡的大小表示测得的量。该示例不使用地理坐标,但可以很容易地使用它们。 ggplot2软件包还支持添加空间多边形作为附加层,例如,使用geom_path。 coord_map的帮助文件显示了一些使用地图数据的示例。另请参阅fortify函数以将SpatialPolygons对象转换为data.frame(这是ggplot2所需的)。
某人足够雄心勃勃的可以写映射x,y,大小,颜色的geom_stackbox()... –
这将是一个选项。虽然我更喜欢boxplot更多... –
我个人比较喜欢Paul的版本;这就是我通常这样做的方式。但是,我需要绘制所示示例中的数据...: - /有人知道如何使用ggplot做Spacedman示例吗? – Dominik
- 1. 剧情频率上的某些条件
- 2. 剧情频密度(X,F)
- 3. 字频率计数根据使用python
- 4. Solr性能根据查询频率
- 5. 根据频率分配单词CSS HTML
- 6. 动画剧情/轨迹在MATLAB /倍频
- 7. 支线剧情,剧情无厘头
- 8. Python:剧情在scipy剧情之上? (voronoi)
- 9. 核心 - 剧情:个性化剧情
- 10. 剧情饼图和,使用R从频率表直方图计数
- 11. 情节系数由频率
- 12. 剧情值
- 13. 与Android剧情
- 14. 互动剧情
- 15. 剧情值
- 16. 剧情时间
- 17. BeamDeflection剧情
- 18. 发现实际频率归一化频率的情况下
- 19. 3D情节剧情 - R
- 20. 剧情ř矢量
- 21. python剧情问题
- 22. -Python剧情代码
- 23. 动画剧情MATLAB
- 24. 剧情上在Matlab
- 25. 剧情用线条
- 26. 剧情矢量场
- 27. 剧情中的R
- 28. 剧情中的R
- 29. Python剧情标签
- 30. 编辑剧情-python
这是一种奇怪的一个,你确定的细胞不只是一个非常稀疏的网格,其中的颜色是因为该值蓝是否存在与否?这并不是说你想要在给定的点上绘制n个单元格,是吗?样本数据和关于数据的更多细节将会有所帮助,但是如果您只是想要一个“这样的”情节,那么真正基本的出发点是m < - matrix(sample(c(0,1),50 * 30,replace = TRUE ,prob = c(0.95,0.05)),50,30);图像(m,col = c(“白色”,“蓝色”)) – mdsumner
每个块表示报告的事件数量,位置显示发生数量的位置。 –
块或气泡的问题是观察者的定性反应之一。那就是:面积或直径是否与基础值成线性比例?许多人(包括当然包括Tufte)都写过这样的文章。 –