編集:おそらくあなたが望むものにもっと似たもの:
breaks <- quantile(data$vis)
qplot(x=x, y=y, data = data, color = vis) +
scale_colour_gradientn(breaks = as.vector(breaks), colours =
c("grey", "blue", "red"), values = as.vector(breaks),
oob = identity, rescaler = function(x,...) x, labels = names(breaks))
古い答え:この場合、休憩は本当に必要なものではありません
qplot(x=x, y=y, data=data, color=vis) + scale_colour_gradient(breaks = 1:10 * 10)
持っているデータ量を考えると
quantile(data$vis, seq(0, 1, 0.1))
0% 10% 20% 30% 40%
9.294095e-07 1.883887e-02 8.059213e-02 1.646752e-01 3.580304e-01
50% 60% 70% 80% 90%
6.055612e-01 9.463869e-01 1.638687e+00 2.686160e+00 5.308239e+00
100%
1.693077e+02
おそらく次のようなもの
qplot(x=x, y=y, data=data, color=vis) + scale_colour_gradient(limits = c(0,5))
ここでポイント> 5は灰色です。あなたが最初に望んでいたかもしれないより複雑な解決策は、これでしょう。