从ggplot2绘制轮廓曲线中的一些点

时间:2019-12-28 14:22:52

标签: r ggplot2

我想在轮廓曲线上绘制z的特定点数,例如8或10点。下面我显示一个示例,但有所有要点。

library(ggplot2)
library(tidyverse)

rosenbrock <- function(x){
    d <- length(x)
    out <- 0
    for(i in 1 : (d - 1)){
        out <- out + 100 * ( x[i]^2 - x[i + 1] )^2 + (x[i] - 1)^2
    }
    out
}

set.seed(2020)
coord <- matrix(runif(2000, -100, 100), ncol = 2)
graph <- apply(coord, 1, rosenbrock)    

results <- data.frame(x = coord[, 1], y = coord[, 2], z = graph)
results <- results %>% arrange(desc(z))    

results %>% 
    ggplot(aes(x = x, y = y, z = z)) + 
        geom_point(aes(colour = z)) + 
        stat_density2d() +
        theme_light()

1 个答案:

答案 0 :(得分:1)

当您最初绘制点时,可以将alpha设置为零,然后过滤数据以包含所需的点(这里,我只是随机取样):

console.log('Image URL: ' + profile.getImageUrl());