barplot () com pontos de dados - base R

DJV

Estou tentando traçar o gráfico de barras com pontos de dados no topo base R.

Estou usando base Rporque é impossível criar preenchimento de textura de forma simples ggplot(por exemplo, veja aqui , e ggtexture não permite edição complexa).

Usando a barplot()função e points(), posso fazer isso:

library(tidyverse)

#Sample data
data <- iris %>% 
  group_by(Species) %>% 
  summarise(m = mean(Sepal.Length), 
            se = sd(Sepal.Length)/
              sqrt(sum(!is.na(Sepal.Length)))) %>% 
  ungroup()

chart <- barplot(height=data$m, names=data$Species,
        density = c(5, 5, 5),
        angle = c(0,45,90),
        col = "brown",
        width = c(0.1,0.1,0.1), 
        font.axis = 2, 
        border = c("black"), 
        lwd = 2)

points(x = chart,
       y = data$m)

insira a descrição da imagem aqui

No entanto, gostaria de criar algo semelhante ao abaixo:

iris %>% 
  group_by(Species) %>% 
  summarise(m = mean(Sepal.Length), 
            se = sd(Sepal.Length)/
              sqrt(sum(!is.na(Sepal.Length)))) %>% 
  ungroup() %>%
  ggplot(aes(Species, m, 
             group = Species, 
             color = Species, 
             shape = Species)) + 
  geom_bar(stat = "identity", fill="white",
           color="black") +
  geom_jitter(
    aes(Species, Sepal.Length),
    data = iris) 

insira a descrição da imagem aqui

Jay.sf

Converter Speciespara fatorar usando a barplotsaída como rótulos. Quando então convertido de volta para numérico usando a as.numeric(as.character(x)))abordagem, os pontos aparecem nos lugares certos para cada grupo.

# op <- par(xpd=TRUE)
b <- barplot(with(iris, tapply(Sepal.Length, Species, mean)), density=c(5, 5, 5), 
             angle=c(0, 45, 90), 
             col="brown", 
             width=c(0.1, 0.1, 0.1), 
             font.axis=2, 
             border=c("black"), 
             lwd=2, 
             ylim=c(0, max(jitter(iris$Sepal.Length)) * 1.15)  ## better use dynamic ylim
             )
iris$Species.f <- factor(iris$Species, labels=b)
with(iris, points(jitter(as.numeric(as.character(iris$Species.f))), 
                  jitter(Sepal.Length), pch=as.numeric(Species) + 14, 
                  col=as.numeric(Species) + 1, cex=.8))
legend("topleft", title="Species", legend=levels(iris$Species), 
       pch=seq(levels(iris$Species)) + 14, col=seq(levels(iris$Species)) + 1, 
       horiz=TRUE, cex=.8)
box(lwd=2)
# par(op)

insira a descrição da imagem aqui

Este artigo é coletado da Internet.

Se houver alguma infração, entre em [email protected] Delete.

editar em
0

deixe-me dizer algumas palavras

0comentários
loginDepois de participar da revisão

Artigos relacionados

barplot () com pontos de dados - base R

como posso fazer meus dados lado a lado barplot com pontos

filtrar dados no BigQuery com base na importância dos pontos de dados sql

Colorir condicionalmente os pontos de dados com base em um terceiro parâmetro com função de gráfico em R

Filtrar pontos de dados específicos de um dataframe com base em determinadas condições

Número de mudanças em linhas comuns com base em pontos de dados semelhantes

Número de mudanças em linhas comuns com base em pontos de dados semelhantes

R Shiny Como usar renderPlot para construir barplot enquanto recupera dados de mysqlDB com base na seleção do usuário

Gráfico R - cor das entradas em gráficos de pontos com base na presença em outro quadro de dados (usando loop)

como posso colorir pontos específicos com base em dois quadros de dados

Como seleciono pontos de dados com base em um RangeSlider em Bokeh?

matplotlib: como alterar a cor dos pontos de dados com base em alguma variável

matplotlib: como alterar a cor dos pontos de dados com base em alguma variável

como colorir pontos de dados com base em algumas regras em matplotlib

como colorir pontos de dados com base em algumas regras em matplotlib

Plotar pontos no mapa base com marcadores diferentes, dependendo das condições no quadro de dados do pandas

Plotar pontos no mapa base com marcadores diferentes, dependendo das condições no quadro de dados do pandas

Consulta SQL que encontra pontos de dados com base na exclusão de outro ponto de dados

Traçar dados de pontos agrupados usando apenas código R de base

Barplot com dados fornecidos

Adicionando pontos ao barplot empilhado com base nas condições do ggplot

Linguagem R: conversão de imagens com pontos regulares em quadro de dados

Limpeza de dados com R: livrando-se de pontos finais extras

Como classificar pontos de dados de acordo com vários fatores em r

Várias cores para pontos de dados com gráfico de dispersão em R

Spatstat, interpolando pontos de dados em R

Elimine pontos de dados outlier em R

Encontre um intervalo de sequência com base em pontos finais e dados inconsistentes com o SQL Server

Forçando marcas de escala do eixo X do gráfico de área com base em pontos de dados

TOP lista

quentelabel

Arquivo