rcharts NVD3 lineChart 中的绘图区域
Plot area in rcharts NVD3 lineChart
我想使用 area=true 选项使用 rCharts 的 NVD3 线图绘制不同人口的分布,如 http://nvd3.org/examples/line.html。
这是我正在做的事情:
require(devtools)
install_github('ramnathv/rCharts')
require(rCharts)
df<-data.frame(X=rep(1:4,2),Y=1:8,fil=c(rep("A",4),rep("B",4)))
denp <- nPlot(Y ~ X, group = 'fil', data = df, type = 'lineChart')
denp$chart(color =c('#ff7f0e', 'blue', 'green'))
denp$yAxis(axisLabel= 'Density')
denp$xAxis(axisLabel= 'Value')
denp$chart(margin = list(left=80,bottom=80))
denp$yAxis(tickFormat = "#!function (x,y,e) { return }!#")
denp$xAxis(tickFormat = "#!function (x,y,e) {
tickformat = ['0,01','0,1',1,10,100,1000,10000,'100k'];
return tickformat[x+2];}!#")
denp$chart(tooltipContent = "#! function(key, val, e, graph){
return '<h3>' + '<font color=blue>'+ key +'</font>'+ '</h3>' + '<p>'+ val } !#")
denp
我发现的问题是我无法将 area 参数切换为 true。
我试过:
denp$chart(area=TRUE)
denp$chart(area=c(TRUE,TRUE,TRUE))
denp$chart(area=c('true'))
denp$chart(area=c('true','true','true'))
denp$chart(area=c('#!true!#'))
denp$chart(area=c('#!true!#','#!true!#','#!true!#'))
它们的结果都是空白图。
有没有一种方法可以在 rCharts 中为这种类型的图表使用区域选项,或者它目前是否超出了图书馆的范围?
将类型更改为 'stackedAreaChart'
这就是你想要的吗?
denp <- nPlot(Y ~ X, group = 'fil', data = df, type = 'stackedAreaChart')
denp$chart(color =c('#ff7f0e', 'blue', 'green'))
denp$yAxis(axisLabel= 'Density')
denp$xAxis(axisLabel= 'Value')
denp$chart(margin = list(left=80,bottom=80))
denp$yAxis(tickFormat = "#!function (x,y,e) { return }!#")
denp$xAxis(tickFormat = "#!function (x,y,e) {
tickformat = ['0,01','0,1',1,10,100,1000,10000,'100k'];
return tickformat[x+2];}!#")
denp$chart(tooltipContent = "#! function(key, val, e, graph){
return '<h3>' + '<font color=blue>'+ key +'</font>'+ '</h3>' + '<p>'+ val } !#")
denp
如果您想合并图表类型(如您 link 的示例),您必须使用 type = 'multiChart'
查看示例 here
这大概就是您要查找的内容吗?
我通过添加行
实现了这一点
denp$chart(isArea=TRUE)
到你的代码。看起来将区域布尔值设置为 true 的函数称为 isArea (documentation).
您可以按照@seaotternerd 的建议使用isArea
函数,并使用自定义javascript 函数专门设置您想要设置为true 的区域参数。
例如,使用:
denp$chart(isArea="#! function(d) {
if(d.key=='A') return true;
} !#")
这里d
是数据
你得到:
我想使用 area=true 选项使用 rCharts 的 NVD3 线图绘制不同人口的分布,如 http://nvd3.org/examples/line.html。
这是我正在做的事情:
require(devtools)
install_github('ramnathv/rCharts')
require(rCharts)
df<-data.frame(X=rep(1:4,2),Y=1:8,fil=c(rep("A",4),rep("B",4)))
denp <- nPlot(Y ~ X, group = 'fil', data = df, type = 'lineChart')
denp$chart(color =c('#ff7f0e', 'blue', 'green'))
denp$yAxis(axisLabel= 'Density')
denp$xAxis(axisLabel= 'Value')
denp$chart(margin = list(left=80,bottom=80))
denp$yAxis(tickFormat = "#!function (x,y,e) { return }!#")
denp$xAxis(tickFormat = "#!function (x,y,e) {
tickformat = ['0,01','0,1',1,10,100,1000,10000,'100k'];
return tickformat[x+2];}!#")
denp$chart(tooltipContent = "#! function(key, val, e, graph){
return '<h3>' + '<font color=blue>'+ key +'</font>'+ '</h3>' + '<p>'+ val } !#")
denp
我发现的问题是我无法将 area 参数切换为 true。 我试过:
denp$chart(area=TRUE)
denp$chart(area=c(TRUE,TRUE,TRUE))
denp$chart(area=c('true'))
denp$chart(area=c('true','true','true'))
denp$chart(area=c('#!true!#'))
denp$chart(area=c('#!true!#','#!true!#','#!true!#'))
它们的结果都是空白图。 有没有一种方法可以在 rCharts 中为这种类型的图表使用区域选项,或者它目前是否超出了图书馆的范围?
将类型更改为 'stackedAreaChart'
这就是你想要的吗?
denp <- nPlot(Y ~ X, group = 'fil', data = df, type = 'stackedAreaChart')
denp$chart(color =c('#ff7f0e', 'blue', 'green'))
denp$yAxis(axisLabel= 'Density')
denp$xAxis(axisLabel= 'Value')
denp$chart(margin = list(left=80,bottom=80))
denp$yAxis(tickFormat = "#!function (x,y,e) { return }!#")
denp$xAxis(tickFormat = "#!function (x,y,e) {
tickformat = ['0,01','0,1',1,10,100,1000,10000,'100k'];
return tickformat[x+2];}!#")
denp$chart(tooltipContent = "#! function(key, val, e, graph){
return '<h3>' + '<font color=blue>'+ key +'</font>'+ '</h3>' + '<p>'+ val } !#")
denp
如果您想合并图表类型(如您 link 的示例),您必须使用 type = 'multiChart'
查看示例 here
这大概就是您要查找的内容吗?
我通过添加行
实现了这一点denp$chart(isArea=TRUE)
到你的代码。看起来将区域布尔值设置为 true 的函数称为 isArea (documentation).
您可以按照@seaotternerd 的建议使用isArea
函数,并使用自定义javascript 函数专门设置您想要设置为true 的区域参数。
例如,使用:
denp$chart(isArea="#! function(d) {
if(d.key=='A') return true;
} !#")
这里d
是数据
你得到: