dataframe - 将更多数据添加到 Highchart 的列中
问题描述
我想在我的实际专栏中提供更多信息,这些信息显示了风力涡轮机多年来遇到的不同类型的事件。
我想知道是否可以使用 Highchart 包或使用 dplyr 的钻取来添加这些额外的信息。
如果它存在,我会向您展示我正在寻找的东西的图片:
这是我的代码和数据框。我实际上使用 mpgg_EX 但 mpgg_EXimproved 是为了获得新的结果。
library(dplyr)
library(highcharter)
mpgg_EXimproved<-data.frame("Country" = c("Belux","Belux","Belux","Belux","Belux","Belux","Belux"), "WT_Manufacturer" = c("bubble","bubble","fever","fever","fever","fever","fever"), "Start_Event_Date" = c("2013", "2014","2013","2014","2015","2016","2019"),Unavailability_origin=c("MECA","MECA","OTH","MECA","MECA","MECA","OTH"),access_hub=c(1,1,0,0,1,1,0),blade=c(1,0,0,1,0,0,0),condensator=c(0,0,1,2,0,0,0),sound=c(0,0,0,0,1,0,0),fire=c(0,0,0,0,0,0,1),stringsAsFactors = FALSE)
mpgg_EX <- data.frame("Country" = c("Belux","Belux","Belux","Belux","Belux"), "WT_Manufacturer" = c("bubble","bubble","fever","fever","fever"), "Start_Event_Date" = c("2013", "2014","2015","2016","2019"),"MECA"=c(2,1,2,1,1),"OTH"=c(1,2,0,0,0),stringsAsFactors = FALSE)
mpgg_EX = mpgg_EX%>%
filter(Country =="Belux") %>%
group_by(WT_Manufacturer,Start_Event_Date)
categories_grouped_EX <- mpgg_EX %>%
group_by(name = WT_Manufacturer) %>%
do(categories = as.list(.$Start_Event_Date)) %>%list_parse()
categories_grouped_EX<- lapply(categories_grouped_EX, function(x) x[!is.na(x)])
hc_indispo_EX <- highchart() %>%
hc_chart(type = "column") %>%
hc_colors(c("#fc5421","#fcf405")) %>%
hc_title(text = "Unavailability Manufacturer Example") %>%
hc_xAxis(title = "Suppliers"
,type = "category"
,categories = categories_grouped_EX
) %>%
hc_legend(layout = "vertical", verticalAlign = "bottom",align = "right", valueDecimals = 0, reversed = TRUE) %>%
hc_plotOptions(
series = list(
cropThreshold = 1000,
stacking = "normal",
borderWidth = 0,
grouping = TRUE,
dataLabels = list(enabled = FALSE)
)
) %>%
hc_add_series(
data = mpgg_EX,
type = "column",
name = "MECA",
hcaes(x = Start_Event_Date,
y = MECA)
) %>%
hc_add_series(
data = mpgg_EX,
type = "column",
name = "OTH",
hcaes(x = Start_Event_Date,
y = OTH)
) %>%
hc_tooltip(formatter = JS("function(){
var point = this.point;
s = '<b>' + this.series.name + '</b>' + ' :' + Highcharts.numberFormat(this.y,0) + '<br/>';
s += '<b>' + 'Total : ' + '</b>' + Highcharts.numberFormat(point.stackTotal,0) + '<br/>';
return (s)}"
))
hc_indispo_EX
解决方案
您已经在代码中使用了工具提示格式化程序。只需以这种方式将其他信息添加到您的 s变量中:
hc_tooltip(formatter = JS("function(){
var point = this.point;
s = '<b>' + this.series.name + '</b>' + ' :' + Highcharts.numberFormat(this.y,0) + '<br/>';
s += '<b>' + 'Something: ' + '</b>' + point.WT_Manufacturer + '<br/>';
s += '<b>' + 'Test: ' + '</b>' + point.Start_Event_Date + '<br/>';
s += '<b>' + 'Total : ' + '</b>' + Highcharts.numberFormat(point.stackTotal,0) + '<br/>';
return (s)}"
))
推荐阅读
- python - 锁定目录和两个类
- java - 使用 Jacop 在 Java 中使 IntVar[] 不相等的约束
- python - Sqlite 连接的 Python NameError
- java - Int 数组排序本身
- angular - 从点击的手风琴中获取名称
- c# - 在 c# 代码中创建事件时,GoogleCalendarV3 API 抛出错误 Invalid Value [400]
- visual-studio - nuget 包,无法安装 EntityFrameworkCore.sqlserver
- angular - 使用 iisnode 的 Angular Universal 直接 url 导航
- ruby-on-rails - 通过参数处理 nil 的 Rails 订单数组
- java - 使用按钮删除 Listview w/ArrayAdapter 中的选定项目