小编Eme*_*son的帖子

ggplot2使geom_tile中的缺失值不为空

geom_tile()R的ggplot2数据可视化包中的层中,当单元格不包含任何数据时,不会绘制它.例如http://docs.ggplot2.org/current/geom_tile.html并搜索"缺失值".

我想更改此行为以显示所有切片的最小值.这有可能吗?如果可以的话怎么样?

附加背景:我使用的时候

stat_density2d(aes(x=x,y=y, fill=..density..), geom="tile", contour=FALSE)
Run Code Online (Sandbox Code Playgroud)

我希望没有密度的区域与密度非常小的区域非常相似.就像现在一样,如果说色谱是从蓝色到红色而背景是白色的,那么当瓷砖中没有数据时它是白色的,并且当瓷砖中有单个数据点是蓝色时.

似乎可以为数据添加伪计数,但我如何提前知道如何分配伪计数?在有刻面的情况下?

r ggplot2

18
推荐指数
3
解决办法
2万
查看次数

如何在R的ggplot2中设置"零"oritentation?

在我的代码中,读取数据以绘制极坐标图.但"0/360"位居榜首.如何将它旋转到右手90度?

ggplot(polar, aes(x=angle, y=distance )) + coord_polar(start=0) + geom_point() +
  scale_x_continuous(breaks=seq(0, 360, by=30), expand=c(0,0), lim=c(0, 360))+
  scale_area()
Run Code Online (Sandbox Code Playgroud)

完整的过程和结果图形在此处描述:http: //keveting.blogspot.tw/2012/08/r-ggplot2-code.html

文档coord_polar:

开始:从弧度方向的12点偏移:1,顺时针; -1,逆时针

所以我试过了

ggplot(polar, aes(x=angle, y=distance)) + 
  coord_polar(***start = 90, direction = -1***) +
  geom_point() + scale_x_continuous(breaks=seq(0, 360, by=30), expand=c(0,0),
  lim=c(0, 360)) + scale_area()
Run Code Online (Sandbox Code Playgroud)

但它仍然没有按照我想要的方式向右旋转90度.

r ggplot2

6
推荐指数
1
解决办法
1781
查看次数

使用每列使用不同参数的函数转换多列

我编写并回顾了大量的R代码,如下所示:

df <- data.frame(replicate(10, sample(0:5, 10, rep = TRUE)))
my.func <- function(col, y) {col %in% y}

df$X2 <- my.func(df$X2, c(1,2))
df$X3 <- my.func(df$X3, c(4,5))
df$X5 <- my.func(df$X5, c(1,2))
df$X6 <- my.func(df$X6, c(4,5))
df$X8 <- my.func(df$X8, c(4,5))
df$X9 <- my.func(df$X9, c(1,2))
df$X10 <- my.func(df$X10, c(1))
Run Code Online (Sandbox Code Playgroud)

也就是说,使用函数对data.frame(或data.table)中的某些列进行了转换,其中一个参数是一个列,另一个参数是某个任意的,对该列而言有点唯一的值。

进行这种转换的更简洁的方法是什么?

我已经尝试过使用data.table的set(:=)运算符,这使事情变得更简洁了,但是每个列名称仍然必须出现两次,并且该函数对于每个列必须出现一次。

r dataframe data.table

3
推荐指数
1
解决办法
96
查看次数

标签 统计

r ×3

ggplot2 ×2

data.table ×1

dataframe ×1