R - Gráficos de pizza
A linguagem de programação R possui inúmeras bibliotecas para criar tabelas e gráficos. Um gráfico de pizza é uma representação de valores como fatias de um círculo com cores diferentes. As fatias são rotuladas e os números correspondentes a cada fatia também são representados no gráfico.
Em R, o gráfico de pizza é criado usando o pie()função que recebe números positivos como uma entrada vetorial. Os parâmetros adicionais são usados para controlar rótulos, cor, título etc.
Sintaxe
A sintaxe básica para criar um gráfico de pizza usando o R é -
pie(x, labels, radius, main, col, clockwise)
A seguir está a descrição dos parâmetros usados -
x é um vetor que contém os valores numéricos usados no gráfico de pizza.
labels é usado para descrever as fatias.
radius indica o raio do círculo do gráfico de pizza. (valor entre -1 e +1).
main indica o título do gráfico.
col indica a paleta de cores.
clockwise é um valor lógico que indica se as fatias são desenhadas no sentido horário ou anti-horário.
Exemplo
Um gráfico de pizza muito simples é criado usando apenas o vetor de entrada e os rótulos. O script a seguir criará e salvará o gráfico de pizza no diretório de trabalho R atual.
# Create data for the graph.
x <- c(21, 62, 10, 53)
labels <- c("London", "New York", "Singapore", "Mumbai")
# Give the chart file a name.
png(file = "city.png")
# Plot the chart.
pie(x,labels)
# Save the file.
dev.off()
Quando executamos o código acima, ele produz o seguinte resultado -
Título e cores do gráfico de pizza
Podemos expandir os recursos do gráfico adicionando mais parâmetros à função. Usaremos parâmetromain adicionar um título ao gráfico e outro parâmetro é colque fará uso da paleta de cores do arco-íris ao desenhar o gráfico. O comprimento do palete deve ser igual ao número de valores que temos para o gráfico. Portanto, usamos length (x).
Exemplo
O script a seguir criará e salvará o gráfico de pizza no diretório de trabalho R atual.
# Create data for the graph.
x <- c(21, 62, 10, 53)
labels <- c("London", "New York", "Singapore", "Mumbai")
# Give the chart file a name.
png(file = "city_title_colours.jpg")
# Plot the chart with title and rainbow color pallet.
pie(x, labels, main = "City pie chart", col = rainbow(length(x)))
# Save the file.
dev.off()
Quando executamos o código acima, ele produz o seguinte resultado -
Porcentagens da fatia e legenda do gráfico
Podemos adicionar a porcentagem da fatia e uma legenda do gráfico criando variáveis de gráfico adicionais.
# Create data for the graph.
x <- c(21, 62, 10,53)
labels <- c("London","New York","Singapore","Mumbai")
piepercent<- round(100*x/sum(x), 1)
# Give the chart file a name.
png(file = "city_percentage_legends.jpg")
# Plot the chart.
pie(x, labels = piepercent, main = "City pie chart",col = rainbow(length(x)))
legend("topright", c("London","New York","Singapore","Mumbai"), cex = 0.8,
fill = rainbow(length(x)))
# Save the file.
dev.off()
Quando executamos o código acima, ele produz o seguinte resultado -
Gráfico Circular 3D
Um gráfico de pizza com 3 dimensões pode ser desenhado usando pacotes adicionais. O pacoteplotrix tem uma função chamada pie3D() que é usado para isso.
# Get the library.
library(plotrix)
# Create data for the graph.
x <- c(21, 62, 10,53)
lbl <- c("London","New York","Singapore","Mumbai")
# Give the chart file a name.
png(file = "3d_pie_chart.jpg")
# Plot the chart.
pie3D(x,labels = lbl,explode = 0.1, main = "Pie Chart of Countries ")
# Save the file.
dev.off()
Quando executamos o código acima, ele produz o seguinte resultado -