, , @ewolden, highcharter.
highcharter pie :
library(highcharter)
A <- c("a", "b", "c", "d")
B <- c(4, 6, 9, 2)
C <- c(23, 26, 13, 15)
df <- data.frame(A, B, C)
myhc_add_series_labels_values <- function (hc, labels, values, text, colors = NULL, ...)
{
assertthat::assert_that(is.highchart(hc), is.numeric(values),
length(labels) == length(values))
df <- dplyr::data_frame(name = labels, y = values, text=text)
if (!is.null(colors)) {
assert_that(length(labels) == length(colors))
df <- mutate(df, color = colors)
}
ds <- list_parse(df)
hc <- hc %>% hc_add_series(data = ds, ...)
hc
}
highchart() %>%
hc_chart(type = "pie", data=df) %>%
myhc_add_series_labels_values(labels=A, values=B, text=C) %>%
hc_tooltip(crosshairs=TRUE, borderWidth=5, sort=TRUE, shared=TRUE, table=TRUE,
pointFormat=paste('<br><b>A: {point.percentage:.1f}%</b><br>C: {point.text}')) %>%
hc_title(text="ABC", margin=20, style=list(color="#144746", useHTML=TRUE))

. D df :
D <- c("Mars", "Jupiter", "Venus", "Saturn")
df <- data.frame(A, B, C, D)
txt <- paste("C:",C," <br>D:", D)
highchart() %>%
hc_chart(type="pie", data=df) %>%
myhc_add_series_labels_values(labels=A, values=B, text=txt) %>%
hc_tooltip(crosshairs=TRUE, borderWidth=5, sort=TRUE, shared=TRUE, table=TRUE,
pointFormat=paste('<br><b>A: {point.percentage:.1f}%</b><br>{point.text}')) %>%
hc_title(text = "ABC", margin = 20, style = list(color = "#144746", useHTML = TRUE))
