Ja, hier ist es. Die erste Figur ist was ich will und die zweite ist was ich getan habe. Die zwei Achsen sind invertiert, aber es ist nicht wichtig. Nun würde Ich mag die beiden Legenden ziehen:
- eine mit einem Gradienten von Farbe, die zu den Farben der Kreise (Slot ‚Color‘ in meinem Datenrahmen Beispiel) entspricht
- man mit den verschiedenen Größen, wenn Kreise (Wert sind in Schlitz 'Count' der Datenrahmen Beispiel)
What I would like to draw
What I have done
die da taframe ich zum Beispiel verwendet wird, ist der folgende:
SO <- data.frame(Description=c("A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K"),
Ratio = c(0.22, 0.14, 0.14, 0.14, 0.14, 0.10, 0.10, 0.08, 0.06, 0.06, 0.06),
Color = c(31, 20, 20, 13, 13, 12, 7, 13, 7, 6, 5),
Count = c(11, 7, 7, 7, 7, 5, 5, 4, 3, 3, 3))
die Funktion, die ich für die zweite Handlung geschrieben ist folgende:
nRes <- nrow(SO)
SO <- SO[order(SO$Ratio, decreasing=TRUE),]
SO <- SO[seq(1:nRes),]
colfunc <- colorRampPalette(c("red","royalblue"))
nbColors <- 5
pal <- colfunc(nbColors)
t <- SO$Color
d <- (max(t) - min(t))/nbColors
base <- seq(from=min(t), to=max(t), by = d)
tmpList <- lapply(t, function(x){
if (x == min(t)){ ind <- 1}
else {ind <- which(x > base)[length(which(x > base))]}
})
myColorsIndex <- unlist(tmpList)
df <- data.frame(x=c(0:(nRes-1)),
y=SO$Ratio,
z=SO$Count,
color=pal[myColorsIndex],
colorSegment=pal[myColorsIndex],
Color = SO$Color,
name = SO$Description)
highchart() %>%
hc_chart(type = "bubble") %>%
hc_add_series(df) %>%
hc_legend(enabled = FALSE) %>%
hc_xAxis(type = "category", categories = df$name) %>%
hc_yAxis(title = list(text = "Ratio"))
Vielen Dank für jede Hilfe
Können Sie ein reproduzierbares Beispiel geben Sie bitte ? –