我正在尝试使用R highcharter包来创建条形图功能。代码如下。我请求帮助 1 - 如何将dataLabels的格式更改为百分比? 2 - 如何设置X轴标签显示角度。我想把它设置为45度
hcbar_categorycount_vertical <- function(data=x,var=y){
df <- data.frame(prop.table(table(data[var])))
names(df) <- c(var,'Proportion')
df$Proportion <- round(df$Proportion*100,2)
df <- df%>% arrange(-Proportion)
df[,1] <- as.character(df[,1])
df[,1] <- factor(df[,1], levels = df[,1])
df$Cumulative <- round(cumsum(df$Proportion),2)
highchart(debug = TRUE) %>%
hc_xAxis(categories=df[[1]]) %>%
hc_yAxis(labels = list(format = "{value}%"), max = 100) %>%
hc_add_series(name=var,data=df$Proportion,type = "column",dataLabels = list(enabled = TRUE, format='{point.label}%'))
}
我不确定dataLabel属性列表中“format”的语法应该是什么。上面的代码似乎不起作用。我已经提到了高图小插图和这个网站:http://jkunst.com/highcharter/highcharts-api.html#hc_xaxis-and-hc_yaxis
但找不到答案。感谢您的帮助。
答案 0 :(得分:7)
@ jeganathan-velu,
1)尝试按'{point.label}%'
'{point.y}%'
2)参见highcharts example。您需要添加hc_xAxis
参数labels = list(rotation = 90)
highcharter包只是highcharts的包装器,因此您可以从highcharts检查所有示例和记录良好的API。 Replicating highcharts demos
答案 1 :(得分:3)
经过试验和错误以及http://api.highcharts.com/highcharts#xAxis.labels.rotation
中的一些进一步研究后找到了答案发布更新的代码组件,以造福他人。
hc_xAxis(categories=df[[1]],labels = list(rotation=-45)) %>%
hc_yAxis(labels = list(format = "{value}%"), max = 100) %>%
hc_add_series(name=var,data=df$Proportion,type = "column",dataLabels = list(enabled = TRUE, format='{point.y}%'))