CSS   发布时间:2022-04-17  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ggplot2受到异常值的影响大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一些异常值使得色标无用的困难.

我的数据具有一个基于一个范围的长度变量,但通常会有一些更大的值.以下示例数据具有500到1500之间的95值,超过50,000的5个值.当我想要看到500到1500之间的颜色变化时,所产生的颜色图例倾向于使用10k,20k,… 70k的颜色变化.真正地,大约1300以上的任何东西应该是相同的纯色(可能是中等/ – 疯狂),但我不知道在哪里定义.

我对任何ggplot解决方案都是开放的,但理想情况下,较低的值将是红色,中白色和较高的蓝色(低是坏).在我自己的数据集中,date是在ggplot aes()中具有as.POSIXct()的实际日期,但似乎并不影响该示例.

#example data
date <- sample(x=1:10,size=100,replace=T)
stateabbr <- sample(x=1:50,replace=T)
Length <- c(sample(x=500:1500,size=95,replace=T),60000,55000,70000,50000,65000)
x <- data.frame(date=date,stateabbr=stateabbr,Length=Length)

#main plot
(g <- ggplot(data=x,aes(x=date,y=factor(stateabbr))) +
  geom_point(aes(color=as.numeric(as.character(Length))),alpha=3/4,size=4) + 
  #scale_x_datetiR_453_11845@e(labels=date_format("%m/%d")) + 
  opts(title="Date and State") + xlab("Date") + ylab("State"))

#problem
g + scale_color_gradient2("Length",midpoint=median(x$Length))

添加trans =“log”或“sqrt”也不会完成任务.

感谢您的帮助!

解决方法

这是一个有点棘手的选择:
#Create a new variable inDicaTing the unusual values
x$Length1 <- "> 1500"
x$Length1[x$Length <= 1500] <- NA

#main plot
# Using fill - tricky!
g <- ggplot() +
  geom_point(data = subset(x,Length <= 1500),y=factor(stateabbr),color=Length),size=4) + 
  geom_point(data = subset(x,Length > 1500),fill=Length1),size=4)+
  opts(title="Date and State") + xlab("Date") + ylab("State")

#problem
g + scale_color_gradient2("Length",midpoint=median(x$Length))

所以这里的棘手部分是使用填写点,以说服ggplot制作另一个传说.您可以明确地使用不同的标签和颜色自定义填充尺寸.

还有一件事,读布兰登的答案.您原则上可以通过采用偏离值来组合两种方法,使用cut为它们创建一个单独的分类变量,然后使用我的技巧与填充量表.这样你可以指出多个离群的积分.

大佬总结

以上是大佬教程为你收集整理的ggplot2受到异常值的影响全部内容,希望文章能够帮你解决ggplot2受到异常值的影响所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。