代码之家  ›  专栏  ›  技术社区  ›  Luis Ramon Ramirez Rodriguez

哪一种颜色与ggplot中的seaborn色调相同?

  •  0
  • Luis Ramon Ramirez Rodriguez  · 技术社区  · 6 年前

    我开始用R编程,我被困在这个情节里了。

    enter image description here

    x <- seq(0, 10,1 )
    y = x**2
    z= x**3
    plot(x, y, type="o", col="blue",xlab='x',ylab="y = x2")
    lines(x,z,col="green")
    

    我需要使用ggplot,因为我必须添加进一步的格式化,但是我没有找到方法,我在寻找seaborn上的“色调”函数的等价物。

    sns.catplot(x="sex", y="survived", hue="class", kind="point", data=titanic);
    
    2 回复  |  直到 6 年前
        1
  •  1
  •   www    6 年前

    使用 ggplot2 class ,即 y z 在你的例子中。

    x <- seq(0, 10,1 )
    y <- x**2
    z <- x**3
    
    # Load the tidyverse package, which contains ggplot2 and tidyr
    library(tidyverse)
    
    # Create example data frame
    dat <- data.frame(x, y, z)
    
    # Conver to long format
    dat2 <- dat %>% gather(class, value, -x)
    
    # Plot the data
    ggplot(dat2, 
           # Map x to x, y to value, and color to class
           aes(x = x, y = value, color = class)) + 
      # Add point and line
      geom_point() +
      geom_line() +
      # Map the color as y is blue and z is green
      scale_color_manual(values = c("y" = "blue", "z" = "green")) +
      # Adjust the format to mimic the base R plot
      theme_classic() +
      theme(panel.grid = element_blank())
    

    enter image description here

        2
  •  1
  •   Ronak Shah    6 年前

    library(ggplot2)
    
    df1 <- data.frame(x, y)
    df2 <- data.frame(x, z)
    
    ggplot(df1, aes(x, y)) + 
           geom_line(color = "blue") + 
           geom_point(color = "blue", shape = 1, size = 2) + 
           geom_line(data = df2, aes(x, z), color = "green") +
           ylab("y = x2")
    

    enter image description here