我正在尝试使用rCharts中的nPlot
来创建直方图。我的数据格式如下:
> head(Data)
X Date Age Race Sex region
1 1 2013-12-31 54 <NA> M washington
2 2 2013-12-31 20 <NA> M california
3 3 2013-12-31 34 B M north carolina
4 4 2013-12-30 43 B M pennsylvania
5 5 2013-12-30 31 W F california
6 6 2013-12-29 43 W M colorado
使用ggplot2(和doBy用于summaryBy):
cdat <- summaryBy(Age~Sex,data=Data,FUN=c(mean),na.rm=TRUE)
cdat <- cdat[-3,]
ggplot(Data,aes(x=Age,fill=Sex))+
geom_histogram(binwidth=.7, alpha=.8, position="identity")+
geom_vline(data=cdat, aes(xintercept=Age.mean, colour=Sex),
linetype="dashed", size=1)
输出是按Sex
分组的直方图:
我想使用rCharts包创建一个类似的图形。我尝试了以下但没有成功:
output$Histogram1 <- renderChart({
Trial <- summaryBy(.~Age+Sex,data=Data,FUN=length)
Histogram1 <- nPlot(x='Age',y='X.length',group='Sex',data=Trial,type='bar',dom='Histogram1')
Histogram1$chart(margin = list(left = 100))
return(Histogram1)
})
代码位于server.R
脚本中 - &gt;一个闪亮的应用程序。
答案 0 :(得分:0)
如果您在闪亮的应用程序之外工作的代码,请尝试使用renderChart2而不是renderChart:
output$Histogram1 <- renderChart2({
Trial <- summaryBy(.~Age+Sex,data=Data,FUN=length)
Histogram1 <- nPlot(x='Age',y='X.length',group='Sex',data=Trial,type='bar',dom='Histogram1')
Histogram1$chart(margin = list(left = 100))
return(Histogram1)
})
答案 1 :(得分:0)
你能说出你面临的确切错误吗?
另外,当我在type="bar"
函数中使用nPlot
时,我也遇到了一些问题。
修复方法是使用type="multiBarChart"
希望有所帮助!
修改1:
另外,正如@susacb建议的那样,使用renderChart2而不是renderChart并删除dom
参数。