我想在自定义格式化函数中引用每个组的y轴值:
library(echarts4r)
# Example data
data <- data.frame(
category = c("A", "B", "C", "D", "E"),
value1 = c(10, 15, 20, 25, 30),
value2 = c(12, 18, 22, 28, 35)
)
# define formatter function
formatter <- htmlwidgets::JS(
"
function(params) {
var tooltipContent = '<b>Category:</b> ' + params[0].axisValue + '<br/>';
params.forEach(function(item) {
var groupName = item.seriesName;
var groupValue = 1;
var groupColor = item.color;
tooltipContent += '<div style=\"display: inline-block; width: 10px; height: 10px; margin-right: 5px; background-color: ' + groupColor + '\"></div>' +
'<b>' + groupName + ':</b> ' + groupValue + '<br/>';
});
return tooltipContent;
}
"
)
# Create the echart
data |>
e_charts(category) |>
e_line(value1, name = "Group 1") |>
e_line(value2, name = "Group 2") |>
e_y_axis(name = "Value") |>
e_x_axis(name = "Category") |>
e_tooltip(trigger = "axis", axisPointer = list(type = "cross"), formatter = formatter)
特别是,如何替换var groupValue = 1;
来引用每个组的y轴值?
1条答案
按热度按时间wnvonmuf1#
要使用变量获取组的y轴值,并考虑到js数据的结构是一个数组的数组(从R列表到echarts 4 r使用ToListExplicit),您应该用途:
参考在这里,转到
2. Callback function
,然后“当数据集像”...“我们可以通过以下方式获得y轴的值”...(不幸的是,在整个长文本中没有可链接的ID)。您的item
变量代表params
-每个数据集的参数对象。