Issue when specifying both the size and color mapping in a scatter plots
Hi,
I can not manage to specify both the size and the color mapping with completely satisfactory results.
If I specify the size mapping globally:
library(plotly)
df <- data.frame(x = 1:12, y = 1:12, s = 1:12, g = rep(c("A", "B", "C"), 4))
plot_ly(data = df, x = ~x, y = ~y, size = ~s, color= ~g)%>%
add_markers()
I have a perfect plot but I suffer from the spurious line.width warning already mentioned in https://github.com/ropensci/plotly/issues/1367
If I specify the size mapping in the marker itself:
plot_ly(data = df, x = ~x, y = ~y, color= ~g)%>%
add_markers(marker = list(size = ~s))
The sizes are wrong: it seems there is an ordering by group within plotly which is not used in the markers.
Indeed, sorting the data.frame according to the colors fixes the issue:
df_sorted = df[order(df[['g']]), ]
plot_ly(data = df_sorted, x = ~x, y = ~y, color= ~g)%>%
add_markers(marker = list(size = ~s))
Let me know how I can help!
I had the same issue and it drove me crazy. That comment really saved me. "... sorting the data.frame according to the colors fixes the issue" Thanks!
thanks, help a lot