Gráficos Estatísticos

Gráficos estatísticos são formas de apresentação dos dados estatísticos, cujo objetivo é o de produzir, no investigador ou no público em geral, uma impressão mais rápida e viva do fenômeno em estudo.


 

Gráfico de Barras

O Gráfico de Barras é uma das formas mais comuns de exibir dados de uma determinada amostra. Gráficos de Barras consistem em 2 variáveis, uma resposta (às vezes chamada de “dependente”) e um preditor (às vezes chamado de “independente”), dispostos no eixo horizontal e vertical de um gráfico. A relação entre o preditor e as variáveis de resposta é mostrada por uma marca de algum tipo (geralmente uma caixa retangular) do valor de uma variável para a outra.

 

Exemplo 01

Esboce um gráfico de barras para os dados abaixo, ou seja, para o número de erros de cálculo em 20 declarações do imposto de renda. Construa uma tabela para 0, 1, 2, 3 erros de cálculo, e o número de restrições em 12, 5, 2, 1.

trutas = c(19.2, 19.6, 17.3, 19.3, 19.5, 20.4, 23.5, 19.0, 19.4, 18.4, 
           19.4, 21.8, 20.4, 21.0, 21.4, 19.8, 19.6, 21.5, 20.2, 20.1, 
           20.3, 19.7, 19.5, 22.9, 20.7, 20.3, 20.8, 19.8, 19.4, 19.3, 
           19.5, 19.8, 18.9, 20.4, 20.2, 21.5, 19.9, 21.7, 19.5, 20.9, 
           18.1, 20.5, 18.3, 19.5, 18.3, 19.0, 19.2, 21.9, 17.0, 19.7, 
           20.7, 21.1, 20.6, 16.6, 19.4, 18.6, 22.7, 18.5, 20.1, 18.6)
trutas
##  [1] 19.2 19.6 17.3 19.3 19.5 20.4 23.5 19.0 19.4 18.4 19.4 21.8 20.4 21.0
## [15] 21.4 19.8 19.6 21.5 20.2 20.1 20.3 19.7 19.5 22.9 20.7 20.3 20.8 19.8
## [29] 19.4 19.3 19.5 19.8 18.9 20.4 20.2 21.5 19.9 21.7 19.5 20.9 18.1 20.5
## [43] 18.3 19.5 18.3 19.0 19.2 21.9 17.0 19.7 20.7 21.1 20.6 16.6 19.4 18.6
## [57] 22.7 18.5 20.1 18.6
sort(trutas)
##  [1] 16.6 17.0 17.3 18.1 18.3 18.3 18.4 18.5 18.6 18.6 18.9 19.0 19.0 19.2
## [15] 19.2 19.3 19.3 19.4 19.4 19.4 19.4 19.5 19.5 19.5 19.5 19.5 19.6 19.6
## [29] 19.7 19.7 19.8 19.8 19.8 19.9 20.1 20.1 20.2 20.2 20.3 20.3 20.4 20.4
## [43] 20.4 20.5 20.6 20.7 20.7 20.8 20.9 21.0 21.1 21.4 21.5 21.5 21.7 21.8
## [57] 21.9 22.7 22.9 23.5
num.erros = c(0, 1, 2, 3)
num.restricoes = c(12, 5, 2, 1)
imposto = cbind(num.erros, num.restricoes)
imposto
##      num.erros num.restricoes
## [1,]         0             12
## [2,]         1              5
## [3,]         2              2
## [4,]         3              1
barplot(num.restricoes, names.arg = num.erros, xlab = "Número de Erros", ylab = "Número de restrições", main = "Gráfico de exemplo Freund - 2006, p. 28")

length(trutas)  # Mostra o tamanho da amostra
## [1] 60
min(trutas)     # Valor mínimo da amostra
## [1] 16.6
max(trutas)     # Valor máximo da amostra
## [1] 23.5

 

Exemplo 02

Esboce um diagrama de barras para os dados abaixo:

dados = c(11, 37, 23, 58, 67, 82, 25, 99, 38, 62, 95, 12, 14, 22, 25, 33, 40, 50, 51, 63)
dados
##  [1] 11 37 23 58 67 82 25 99 38 62 95 12 14 22 25 33 40 50 51 63
dados = sort(dados)
dados
##  [1] 11 12 14 22 23 25 25 33 37 38 40 50 51 58 62 63 67 82 95 99
h= hist(dados, right = FALSE, col="yellow", xlab="Dados", ylab="Frequência", main="Histograma de Dados Exemplo")

h
## $breaks
## [1]   0  20  40  60  80 100
## 
## $counts
## [1] 3 7 4 3 3
## 
## $density
## [1] 0.0075 0.0175 0.0100 0.0075 0.0075
## 
## $mids
## [1] 10 30 50 70 90
## 
## $xname
## [1] "dados"
## 
## $equidist
## [1] TRUE
## 
## attr(,"class")
## [1] "histogram"
h$counts        #mostra a tabulação das contagens com base nos pontos de interrupção padrão
## [1] 3 7 4 3 3
h$mids          #ponto médio das células
## [1] 10 30 50 70 90
h$counts*h$mids
## [1]  30 210 200 210 270
sum(h$counts*h$mids)
## [1] 920
sum(h$counts)
## [1] 20
sum(h$counts*h$mids)/sum(h$counts)
## [1] 46
table(trutas)
## trutas
## 16.6   17 17.3 18.1 18.3 18.4 18.5 18.6 18.9   19 19.2 19.3 19.4 19.5 19.6 
##    1    1    1    1    2    1    1    2    1    2    2    2    4    5    2 
## 19.7 19.8 19.9 20.1 20.2 20.3 20.4 20.5 20.6 20.7 20.8 20.9   21 21.1 21.4 
##    2    3    1    2    2    2    3    1    1    2    1    1    1    1    1 
## 21.5 21.7 21.8 21.9 22.7 22.9 23.5 
##    2    1    1    1    1    1    1
perc=h$counts/sum(h$counts)
perc
## [1] 0.15 0.35 0.20 0.15 0.15
cum = cumsum(perc)
cum
## [1] 0.15 0.50 0.70 0.85 1.00
tc = cbind(pto.medio = h$mids, freq = h$counts, freq.acum = cumsum(h$counts), freq.rel = round(perc, 4), freq.rel.acum = round(cum, 4))
tc
##      pto.medio freq freq.acum freq.rel freq.rel.acum
## [1,]        10    3         3     0.15          0.15
## [2,]        30    7        10     0.35          0.50
## [3,]        50    4        14     0.20          0.70
## [4,]        70    3        17     0.15          0.85
## [5,]        90    3        20     0.15          1.00
plot(tc[1:5,2], type = "b", col = 4)

plot(tc[1:5,3], type = "b", col = 2)

meuhist = function(x, title = NA) {
  hist(x, freq = FALSE, main = title)
  amp = max(x)-min(x)
  m = mean(x)
  s = sd(x)
  xx = (0:200)/200*amp+min(x)
  yy = dnorm(xx, m, s)
  lines(xx, yy, type = "l", col = 4, lwd = 2)
}

meuhist(trutas)
abline(v = mean(trutas), col = "red")
abline(v = quantile(trutas, 0.5), col = "green")

# Gráfico dos valores acumulados
plot(h$mids, cumsum(h$counts), type = "b", lty = 1, col = "red", pch = 13)
# Gráfico dos valores das classes
lines(h$mids, h$counts, type = "b", lty = 1, col = "blue", pch = 13)
# Grid de referência
abline(v = c(40, 60, 80, 100), h = 1:5*20, col = "lightblue", lty = 2)

h$breaks
## [1]   0  20  40  60  80 100
h$counts
## [1] 3 7 4 3 3
tc = cbind(
  h$breaks[1:4], 
  h$breaks[2:6], 
  h$counts, 
  cumsum(h$counts)
)
## Warning in cbind(h$breaks[1:4], h$breaks[2:6], h$counts, cumsum(h$counts)):
## number of rows of result is not a multiple of vector length (arg 1)
colnames(tc) = c("LimInf", "LimSup", "Freq", "FreqAcum")
tc
##      LimInf LimSup Freq FreqAcum
## [1,]      0     20    3        3
## [2,]     20     40    7       10
## [3,]     40     60    4       14
## [4,]     60     80    3       17
## [5,]      0    100    3       20