我正在努力解决以下问题,非常感谢您的帮助。
我有以下数据(这只是一个简化的随机例子)
x<- c('left', 'left', 'left', 'right', 'right', 'right')
y<- c (0.5, 0.3, 0.2, 0.5, 0.7, 0.2)
conf<- c(1.5, 1.7, 3, 2, 3, 1)
df <-data.frame(x,y,conf)
我想做以下情节。
library(ggplot2)
ggplot(df, aes(x=x, y=y))+geom_point()+coord_flip()
这会生成以下图像see photo here。但是我的每个点(y)都有一定的置信度(变量conf),我想在另一个x轴上绘制为置信度值(在这种情况下会出现在右侧,而置信度值)将是垂直线)。如何在绘图的右侧添加第二个x轴,以便它是数字的并且它将我的值绘制为置信区间?
非常感谢你的帮助。
答案 0 :(得分:4)
使用StudentDetails.objects.filter(Mac_Address=AttendenceDetails.object.get(LecClass='273', Date=today()).Mac_Address).values_list('First_Name', 'Last_Name', 'LecClass', 'Student_Id', flat=True)
即可:
geom_errorbarh()
但正如在其他帖子中所说,在x轴上有几个含义可能不太好,所以你可以library(ggplot2)
ggplot(df, aes(x=x, y=y))+geom_point()+coord_flip()+
geom_errorbarh(aes( xmax = as.numeric(x)+conf/10,
xmin = as.numeric(x)-conf/10,
height=0))
:
facet
答案 1 :(得分:1)
稍微观察一下,几个主题表明ggplot的设计不支持您所寻找的内容,这通常是不好的做法(请参阅this comment和this thread)。
似乎有一个&#39; hack&#39; here,可能比你想要的更远。
旁注:我可以问你为什么决定用&#34; x&#34;标记你的y轴。你的x轴与&#34; y&#34;?