Nesta aula, vamos explorar as capacidades gráficas do R base utilizando os datasets ChickWeight do R base. Usaremos o dataset msleep do ggplot2 para criar diferentes tipos de gráficos e aprender como personalizá-los.
Gráficos de Dispersão
Um gráfico de dispersão, também conhecido como scatterplot, é uma representação gráfica que exibe a relação entre duas variáveis quantitativas. Cada ponto no gráfico representa uma observação, onde a posição no eixo horizontal (x) corresponde ao valor de uma variável e a posição no eixo vertical (y) corresponde ao valor da outra variável. Esse tipo de gráfico é particularmente útil para identificar padrões, tendências, correlações ou dispersões entre as duas variáveis. Por exemplo, em um estudo médico, um gráfico de dispersão pode ser usado para analisar a relação entre o peso corporal e a pressão arterial dos pacientes, permitindo que se observe se existe uma correlação entre essas variáveis.
Vamos começar criando um gráfico de dispersão (scatterplot) que mostra a relação entre o tempo total de sono e o tempo de sono REM usando o dataset msleep do pacote ggplot2. Você pode obter informações sobre esse pacote digitanto ?msleep no console. Lembre-se que primeiro será necessário carregar o pacote ggplot2.
Code
library(ggplot2)# Gráfico de Dispersão: Tempo Total de Sono vs. Tempo de Sono REMplot(msleep$sleep_total, msleep$sleep_rem, main="Tempo Total de Sono vs. Tempo de Sono REM",xlab="Tempo Total de Sono (horas)", ylab="Tempo de Sono REM (horas)", pch=19, col="darkgreen")
Vamos explicar cada parte do código:
library(ggplot2):
Esta linha carrega o pacote ggplot2 no R. Embora o gráfico seja criado usando a função plot() do R base, carregar o ggplot2 pode ser necessário para acessar o dataset msleep, que faz parte desse pacote.
plot(msleep$sleep_total, msleep$sleep_rem, ...):
plot(): Função base do R usada para criar gráficos de dispersão, entre outros tipos de gráficos.
msleep$sleep_total: Vetor que representa o tempo total de sono dos mamíferos, plotado no eixo X.
msleep$sleep_rem: Vetor que representa o tempo de sono REM dos mamíferos, plotado no eixo Y.
Este par de variáveis permite que você visualize como o tempo de sono REM se relaciona com o tempo total de sono.
main="Tempo Total de Sono vs. Tempo de Sono REM":
Define o título do gráfico como “Tempo Total de Sono vs. Tempo de Sono REM”, que descreve o que o gráfico está mostrando.
xlab="Tempo Total de Sono (horas)":
Define o rótulo do eixo X como “Tempo Total de Sono (horas)”, indicando que o eixo horizontal representa o tempo total de sono em horas.
ylab="Tempo de Sono REM (horas)":
Define o rótulo do eixo Y como “Tempo de Sono REM (horas)”, indicando que o eixo vertical representa o tempo de sono REM em horas.
pch=19:
Especifica o tipo de símbolo usado para representar os pontos no gráfico. O valor 19 representa um círculo sólido preenchido.
col="darkgreen":
Define a cor dos pontos como verde escuro ("darkgreen"), o que ajuda a distinguir visualmente os pontos no gráfico.
Um scatter plot é interessante para investigar a relação entre o peso corporal e o peso do cérebro dos mamíferos. Vamos fazer isso com o código abaixo:
Code
# Gráfico de Dispersão: Peso Corporal vs. Peso do Cérebroplot(msleep$bodywt, msleep$brainwt, main="Peso Corporal vs. Peso do Cérebro",xlab="Peso Corporal (kg)", ylab="Peso do Cérebro (g)", pch=19, col="blue")
Observe que há valores muito grandes de peso de alguns animais quando comparados com outros. Por exemplo, um elefante tem um peso corporal e cerebral muito maiores do que um roedor. Em uma escala linear (a escala padrão), as diferenças extremas em valores tornam-se difíceis de visualizar em um gráfico, pois valores muito grandes podem dominar o gráfico, enquanto valores pequenos podem se perder, tornando difícil analisar padrões ou correlações em dados com grande variabilidade.
Essa é uma situação na qual o uso de uma escala logaritmica poderia ser útil.
A escala logarítmica “comprime” os valores maiores mais do que os menores, permitindo que todos os dados, desde os pequenos até os grandes, sejam representados de forma mais equilibrada no gráfico. Isso facilita a visualização e interpretação de relações entre variáveis que cobrem amplas faixas de valores. Quando os dados cobrem várias ordens de magnitude, como no caso de pesos corporais variando de alguns gramas a várias toneladas, a escala logarítmica permite que padrões e correlações que seriam difíceis de perceber em uma escala linear se tornem mais visíveis. Na escala logarítmica, distâncias iguais no gráfico representam proporções iguais dos valores originais. Isso significa que uma diferença de 10 para 100 (um aumento de 10 vezes) será visualmente equivalente a uma diferença de 100 para 1000 (também um aumento de 10 vezes), o que ajuda a interpretar os dados de maneira proporcional.
Podemos indicar que desejamos uma escala logaritmica nesse gráfico simplesmente inserindo mais um parâmetro no código: log = “x”: Aplica uma escala logarítmica ao eixo X. log = “y”: Aplica uma escala logarítmica ao eixo Y. log = “xy”: Aplica uma escala logarítmica a ambos os eixos X e Y.
Code
# Gráfico de Dispersão: Peso Corporal vs. Peso do Cérebroplot(msleep$bodywt, msleep$brainwt, main="Peso Corporal vs. Peso do Cérebro",xlab="Peso Corporal (kg)", ylab="Peso do Cérebro (g)", pch=19, col="blue",log ="xy")
A função plot() no R é extremamente versátil, permitindo a criação de diferentes tipos de gráficos simplesmente ajustando o parâmetro type.
O parâmetro type controla como os dados são visualizados, oferecendo diversas opções para atender a diferentes necessidades analíticas. Por exemplo:
- type = "p" cria um gráfico de dispersão padrão com pontos
- type = "l" cria um gráfico de linhas conectando os dados, ideal para visualizar tendências ao longo do tempo.
-type = "b" e type = "o", que combinam pontos e linhas, permitindo que tanto as observações individuais quanto as tendências sejam destacadas.
- type = "h" cria gráficos de barras verticais.
- type = "s" cria gráficos em degraus.
Gráficos de Linhas
A função plot() no R é bastante versátil e, além de criar gráficos de dispersão, também pode ser usada para gerar gráficos de linhas. Ao passar o argumento type="l" dentro da função, os pontos de dados são conectados por linhas, criando um gráfico de linhas que é ideal para visualizar a evolução ou tendência de uma variável ao longo do tempo ou outra sequência ordenada. Isso é particularmente útil em contextos como o monitoramento de séries temporais, onde é importante observar como os valores mudam continuamente. Por exemplo, ao analisar o peso dos pintos ao longo do tempo usando o dataset ChickWeight, o uso de plot() com type="l" conectaria os pesos registrados em diferentes momentos, proporcionando uma visão clara da progressão do crescimento de cada pintinho ao longo do período de estudo.
Podemos visualizar como o peso dos pintos evolui ao longo do tempo com gráficos de linhas.
Code
# Gráfico de Linhasplot(ChickWeight$Time, ChickWeight$weight, type="l", col="red", lwd=2, main="Evolução do Peso ao Longo do Tempo", xlab="Tempo (dias)", ylab="Peso (g)")
Experimente trocar o parâmetro type=“l” para type=“b” ou type=“o” para ver o resultado.
Histogramas
Um histograma é uma representação gráfica que organiza e exibe a distribuição de um conjunto de dados contínuos, mostrando a frequência de valores dentro de intervalos (ou “bins”). É uma ferramenta útil para visualizar a forma da distribuição, identificar padrões, como a normalidade dos dados, e detectar outliers.
Para facilitar a compreensão dos dados em um histograma, é possível ajustar o número de bins, o que influencia a granularidade da visualização — mais bins revelam detalhes finos, enquanto menos bins dão uma visão mais geral. Além disso, a personalização das cores, a adição de rótulos e títulos claros, e a escolha de escalas apropriadas para os eixos podem tornar o histograma mais informativo e acessível para o público.
A função no R base para criar histogramas é hist().
Vamos criar histogramas para visualizar a distribuição da variável tempo total de sono (sleep_total) no dataset msleep.
Code
# Histograma do Tempo Total de Sonohist(msleep$sleep_total, main="Distribuição do Tempo Total de Sono", xlab="Tempo de Sono (horas)", col="lightblue", border="black")
Seria mais interessante analisar o tempo total de sono em diferentes grupos, por exemplo, comparando o tempo total de sono nos carnívoros, onivoros, herbivoros e insetos. Entretato a função hist() não dá suporte a essa separação. Podemos então criar diferentes histogramas para cada um desses grupos.
Code
hist(msleep$sleep_total[msleep$vore =="carni"], main ="Carnívoros", xlab ="Tempo Total de Sono (horas)", col ="cyan", breaks =10)
Gráficos sopbrepostos
É possível adicionar gráficos um sobre o outros com o argumento add = TRUE. Esse argumento permite sobrepor cada novo histograma no gráfico existente, facilitando a comparação direta entre os grupos. Podemos também usar o argumento rgb(0, 1, 1, 0.5) para criar uma cor ciano semi-transparente para o histograma dos carnívoros. Cada grupo tem uma cor diferente, mas todas são semi-transparentes para permitir a visualização de sobreposições.
Code
# Criar histogramas sobrepostos com cores transparenteshist(msleep$sleep_total[msleep$vore =="carni"], main ="Sobreposição de Histogramas por Tipo de Alimentação", xlab ="Tempo Total de Sono (horas)", col =rgb(0, 1, 1, 0.5), breaks =10, xlim =c(0, 20), ylim =c(0, 15))hist(msleep$sleep_total[msleep$vore =="herbi"], col =rgb(1, 0, 1, 0.5), breaks =10, add =TRUE)hist(msleep$sleep_total[msleep$vore =="omni"], col =rgb(1, 1, 0, 0.5), breaks =10, add =TRUE)hist(msleep$sleep_total[msleep$vore =="insecti"], col =rgb(0, 1, 0, 0.5), breaks =10, add =TRUE)legend("topright", legend =c("Carnívoros", "Herbívoros", "Onívoros", "Insetívoros"), fill =c(rgb(0, 1, 1, 0.5), rgb(1, 0, 1, 0.5), rgb(1, 1, 0, 0.5), rgb(0, 1, 0, 0.5)))
Sobrepor histogramas não é uma boa prática. Como podemos ver no gráfico acima, essa sobreposição não serve para mostrar com clareza as diferenças. Criar multiplas janelas ou usar um Boxplot pode ser bem mais interessante.
Janelas com múltiplos gráficos
Podemos agrupar vários desses gráficos numa janela usando as funções par() e os parâmetros mfrow ou mfcol para organizar a disposição dos gráficos em múltiplos subplots dentro da mesma janela gráfica. Essas funções são parâmetros da função par() e são especialmente úteis quando queremos visualizar várias comparações ou análises simultaneamente. As letras mf significam multiple frames e row e col significam, respectivamente, linhas e colunas.
mfrow = c(n, m): Organiza os gráficos em uma matriz com n linhas e m colunas, preenchendo os gráficos linha por linha. Por exemplo, par(mfrow = c(2, 2)) dividirá a janela gráfica em uma grade de 2 linhas por 2 colunas, permitindo a exibição de até quatro gráficos. O primeiro gráfico será colocado na primeira linha, primeira coluna; o segundo na primeira linha, segunda coluna; e assim por diante.
mfcol = c(n, m): Similar ao mfrow, mas organiza os gráficos coluna por coluna. Usando par(mfcol = c(2, 2)), a janela gráfica também será dividida em 2 linhas por 2 colunas, mas os gráficos serão preenchidos de cima para baixo na primeira coluna, depois na segunda coluna.
Esses parâmetros são particularmente úteis em análises comparativas, onde é necessário visualizar diferentes gráficos simultaneamente. Por exemplo, ao comparar distribuições de dados entre diferentes grupos ou ao analisar várias variáveis de um conjunto de dados, o uso de mfrow ou mfcol permite organizar esses gráficos de maneira clara e sistemática, facilitando a interpretação conjunta dos resultados.
Code
# Ajustar a janela gráfica para mostrar múltiplos histogramaspar(mfrow =c(2, 2)) # Cria uma janela gráfica 2x2# Criar histogramas separados para cada categoria de 'vore'hist(msleep$sleep_total[msleep$vore =="carni"], main ="Carnívoros", xlab ="Tempo Total de Sono (horas)", col ="cyan", breaks =10)hist(msleep$sleep_total[msleep$vore =="herbi"], main ="Herbívoros", xlab ="Tempo Total de Sono (horas)", col ="pink", breaks =10)hist(msleep$sleep_total[msleep$vore =="omni"], main ="Onívoros", xlab ="Tempo Total de Sono (horas)", col ="yellow", breaks =10)hist(msleep$sleep_total[msleep$vore =="insecti"], main ="Insetívoros", xlab ="Tempo Total de Sono (horas)", col ="green", breaks =10)
Code
# Resetar o layout gráfico para 1x1par(mfrow =c(1, 1))
Boxplots
Um boxplot, também conhecido como gráfico de caixa, é uma ferramenta estatística utilizada para visualizar a distribuição de um conjunto de dados. Ele mostra a mediana, os quartis e os valores extremos de um conjunto de dados, oferecendo uma maneira eficiente de identificar a centralidade, a dispersão e a presença de outliers (valores atípicos).
O boxplot é particularmente útil para comparar a distribuição de dados entre diferentes grupos ou categorias, facilitando a análise das diferenças entre eles. Utilizaremos o boxplot para verificar as diferenças no peso dos pintinhos alimentados com diferentes dietas.
A função no R base para criar boxplots é boxplot().
O código abaixo cria um gráfico de caixas (boxplot) usando a biblioteca ggplot2 no R, que visualiza a distribuição do tempo total de sono (sleep_total) de diferentes classes de animais (vore) no dataset msleep. Veja como o Boxplot é bem mais intuitivo que o histograma sobreposto.
Code
library(ggplot2)boxplot(sleep_total ~ vore, data=msleep, main="Distribuição do Tempo Total de Sono", xlab="Classe", ylab="Tempo total de sono", col=c("cyan", "pink", "yellow", "green"))
Detalhamento do Código:
library(ggplot2):
Carrega a biblioteca ggplot2, que é uma das bibliotecas mais populares no R para criar gráficos. No entanto, neste caso específico, a função boxplot usada é uma função base do R e não pertence ao ggplot2.
boxplot(sleep_total ~ vore, data=msleep, ...):
Cria um gráfico de caixas (boxplot) que mostra a distribuição do tempo total de sono (sleep_total) para cada categoria de dieta (vore) dos animais no dataset msleep.
sleep_total ~ vore: A fórmula sleep_total ~ vore indica que queremos comparar a variável dependente sleep_total (tempo total de sono) em função da variável independente vore (classe de dieta dos animais: herbívoros, carnívoros, etc.).
data=msleep: Especifica que os dados para o gráfico estão no dataset msleep.
main="Distribuição do Tempo Total de Sono":
Define o título do gráfico como “Distribuição do Tempo Total de Sono”.
xlab="Classe":
Define o rótulo do eixo X como “Classe”, que corresponde às diferentes categorias de dieta (por exemplo, herbívoros, carnívoros, etc.).
ylab="Tempo total de sono":
Define o rótulo do eixo Y como “Tempo total de sono”, que representa a variável sleep_total.
col=c("cyan", "pink", "yellow", "green"):
Define as cores das caixas no gráfico. Cada caixa será colorida com uma das cores listadas: ciano, rosa, amarelo e verde.
Usando paletas de cores
No R podemos indicar a cor desejada ou então a paleta de cores desejada. No gráfico acima foram indicadas as 4 cores a serem usadas. A função colors() exibe todas as cores disponíveis no R.
Entretanto, geralmente é bem mais simples indicar apenas a paleta de cores a ser usada. E o R se encarrega de usar as diferentes cores dessa paleta:
Paletas de Cores no R Base:
- palette() - Paleta padrão de cores (8 cores básicas).
- rainbow() - Espectro de cores contínuo (arco-íris).
- heat.colors() - Cores variando de vermelho a amarelo (mapas de calor).
- terrain.colors() - Cores variando de verde a marrom (simulação de terrenos).
- topo.colors() - Cores variando de azul a vermelho (topografia).
- cm.colors() - Cores variando de ciano a magenta.
- gray.colors() - Tons de cinza.
- hcl.colors() - Paletas baseadas na especificação HCL (Hue-Chroma-Luminance), com várias opções como “viridis”, “plasma”, “inferno”, “terrain”, entre outras.
O argumento principal das paletas de cores no R é geralmente o número de cores que você deseja gerar a partir da paleta. Esse argumento é tipicamente especificado como o primeiro argumento na chamada da função da paleta de cores. Dependendo da função, ele pode ter diferentes nomes ou simplesmente ser o primeiro argumento sem nome.
Vejamos como gerar o gráfico anterior usando a paleta de core rainbow com 4 cores.
Code
# Observe que não preciso da linha `library(ggplot2)` toda vez, apenas uma vez por sessão do R. # Deixei aqui apenas para lembrar que é necessário carregar o ggplot por causa do dataset msleeplibrary(ggplot2)boxplot(sleep_total ~ vore, data=msleep, main="Distribuição do Tempo Total de Sono", xlab="Classe", ylab="Tempo total de sono", col=rainbow(4))
Modifique o código acima usando outras paletas. Expereimente também mudar o número de cores para mais de 4 e menos de 4 e veja o que acontece.
Vejamos outro exemplo, usando o dataset ChickWeight, com boxplots separados para cada dieta, poderemos visualizar rapidamente como os pesos variam entre os grupos. O Boxplot permite identificar qual dieta está associada a maiores ou menores pesos medianos, e detectar a presença de outliers que possam indicar respostas excepcionais à dieta. Essa visualização nos ajudará a entender melhor a eficácia das diferentes dietas no crescimento dos pintinhos.
Code
# Boxplot Comparando Dietasboxplot(weight ~ Diet, data=ChickWeight, main="Distribuição de Pesos por Dieta", xlab="Dieta", ylab="Peso (g)", col=rainbow(4))
O R tem também vários outros pacotes de cores, que podem ser instalados e então usados:
O pacote RColorBrewer é uma ferramenta poderosa para selecionar paletas de cores adequadas para a visualização de dados. Dependendo do tipo de dados que você está analisando, você pode escolher entre paletas qualitativas (para categorias distintas), sequenciais (para dados ordenados) e divergentes (para dados com um ponto central de interesse). Essas paletas ajudam a melhorar a clareza e a comunicação visual de suas análises.
Sintaxe do uso das paletas de RColorBrewer: brewer.pal(4,"Blues")
O pacote viridis no R oferece paletas de cores perceptualmente uniformes. Ele foi projetado para ser utilizado em gráficos onde a percepção de gradações de cores é crucial, especialmente em gráficos de densidade, mapas de calor, ou qualquer visualização onde as cores precisam ser facilmente distinguíveis por todos, incluindo pessoas com deficiências visuais, como daltonismo.
Características Principais do Pacote viridis: - Perceptualmente Uniforme: As paletas de cores fornecidas pelo viridis são uniformemente perceptuais, o que significa que as mudanças de cor são percebidas como equidistantes em toda a faixa de cores. Isso é particularmente útil em gráficos que requerem uma interpretação precisa das diferenças de valores.
- Adequado para Daltonismo: As paletas do viridis foram projetadas para serem perceptíveis por pessoas com diferentes tipos de daltonismo, tornando as visualizações mais acessíveis.
- Compatibilidade com Impressão em Escala de Cinza: As paletas viridis são projetadas para serem compreensíveis mesmo quando impressas em preto e branco ou em escala de cinza, mantendo a legibilidade e a diferenciação de dados.
Paletas Disponíveis: O pacote oferece várias paletas, cada uma com suas próprias características de cor:
- viridis: A paleta padrão, que vai do roxo escuro ao amarelo.
- magma: Uma paleta que vai do preto ao amarelo claro, passando por roxo e laranja.
- plasma: Vai do roxo ao amarelo, com uma transição mais brilhante e colorida.
- inferno: Semelhante ao magma, mas com uma progressão mais intensa de preto a amarelo.
- cividis: Uma paleta otimizada para pessoas com daltonismo deuteranopia.
Pacote colorspace: - sequential_hcl() - Paletas sequenciais em HCL. - diverging_hcl() - Paletas divergentes em HCL. - qualitative_hcl() - Paletas qualitativas em HCL.
Experimente Instalar e usar alguma dessas paletas de cores.
Code
library(RColorBrewer)# Boxplot Comparando Dietasboxplot(weight ~ Diet, data=ChickWeight, main="Distribuição de Pesos por Dieta", xlab="Dieta", ylab="Peso (g)", col=brewer.pal(4, "Set1"))
Gráficos de Barra
Os gráficos de barras são uma excelente ferramenta para visualizar e comparar a frequência ou magnitude de diferentes categorias ou grupos. Eles são amplamente utilizados em análises estatísticas para mostrar distribuições categóricas, comparações entre grupos ou evoluções de uma variável em diferentes condições. No R, a criação de gráficos de barras é tipicamente feita usando a função barplot(), mas também podemos utilizar a função plot() em combinação com o argumento type = "h" para simular gráficos de barras.
Um detalhe importante é que para construir Barplots no R base é primeiro necessário criar uma tabela de frequencias. Essa tabela é que será o argumento principal da função barplot().
Exemplo 1: Contagem de Pintinhos por Dieta (ChickWeight)
Vamos criar um gráfico de barras que mostra a quantidade de pintinhos alimentados com cada uma das dietas disponíveis no dataset ChickWeight.
Code
# criando a tabela de frequencias de pintinhos em cada dietadiet_count <-table(ChickWeight$Diet)# Criando um gráfico de barras usando barplot()barplot(diet_count, main ="Número de Pintinhos por Dieta", xlab ="Dieta", ylab ="Número de Pintinhos", col=terrain.colors(4), border ="black")
Personalização dos Gráficos de Barras
Os gráficos de barras também podem ser personalizados para atender às necessidades específicas da análise:
Cores (col): Atribua diferentes cores às barras para distinguir claramente as categorias.
Bordas (border): Adicione bordas às barras para destacar ainda mais as divisões entre as categorias.
Títulos e Rótulos: Use main para o título do gráfico, xlab para o rótulo do eixo X e ylab para o rótulo do eixo Y, garantindo que o gráfico seja facilmente compreendido.
Gráficos de Pizza
Embora gráficos de pizza tenham inúmeras limitações, podemos utilizá-los para visualizar proporções de um determinado grupo. Da mesma forma que fizemos com Barplots, também é necessário criar uma tabela de frequencias. Essa tabela é que será o argumento principal da função pie().
Code
# criando a tabela de frequencias de pintinhos em cada dietadiet_count <-table(ChickWeight$Diet)# Criando um gráfico de barras usando barplot()pie(diet_count, main ="Proporção de Pintinhos por Dieta")
Um gráfico de pizza é indequado quando plotamos diversas categorias. Veja o que acontece quando tentamos criar um grafico desses com uma variável que tem mais de 5 categorias:
Code
# Gráfico de Pizza: Proporção de Mamíferos por Ordem# criando a tabelaorder_counts <-table(msleep$order)# gerando o gráficopie(order_counts, main="Proporção de Mamíferos por Ordem")
Exportando Gráficos
Salvar gráficos criados com R base é uma tarefa essencial para a documentação e compartilhamento de suas análises. O R oferece várias funções para salvar gráficos em diferentes formatos, como PNG, JPEG, PDF, e outros. Abaixo estão os passos e exemplos para salvar gráficos em alguns dos formatos mais comuns.
Salvando como PNG
O formato PNG é muito usado para gráficos de alta qualidade que precisam ser inseridos em documentos ou compartilhados digitalmente.
Code
# Abrir um dispositivo gráfico PNGpng("meu_grafico.png", width =800, height =600)# Criar o gráficoplot(1:10, (1:10)^2, main ="Gráfico de Exemplo", col ="blue", pch =19)# Fechar o dispositivo gráficodev.off()
quartz_off_screen
2
png("meu_grafico.png", width = 800, height = 600): Abre um dispositivo gráfico PNG com o nome do arquivo especificado e define a largura e altura em pixels.
dev.off(): Fecha o dispositivo gráfico e salva o arquivo. Sempre lembre-se de chamar dev.off() após terminar de criar o gráfico.
Salvando como JPEG
O formato JPEG é ideal para gráficos que precisam de compressão e são menos exigentes em termos de qualidade.
Code
# Abrir um dispositivo gráfico JPEGjpeg("meu_grafico.jpg", width =800, height =600)# Criar o gráficoplot(1:10, (1:10)^3, main ="Gráfico de Exemplo em JPEG", col ="red", pch =19)# Fechar o dispositivo gráficodev.off()
quartz_off_screen
2
Salvando como PDF
O formato PDF é ideal para gráficos vetoriais, que precisam ser redimensionados sem perda de qualidade, como em publicações.
Code
# Abrir um dispositivo gráfico PDFpdf("meu_grafico.pdf", width =8, height =6)# Criar o gráficoplot(1:10, (1:10)^4, main ="Gráfico de Exemplo em PDF", col ="green", pch =19)# Fechar o dispositivo gráficodev.off()
quartz_off_screen
2
Salvando como TIFF
O formato TIFF é usado para gráficos de alta qualidade, frequentemente para publicações científicas.
Code
# Abrir um dispositivo gráfico TIFFtiff("meu_grafico.tiff", width =800, height =600, res =300)# Criar o gráficoplot(1:10, (1:10)^5, main ="Gráfico de Exemplo em TIFF", col ="purple", pch =19)# Fechar o dispositivo gráficodev.off()
quartz_off_screen
2
Salvando como BMP
O formato BMP é um formato de imagem bitmap que preserva a qualidade, mas pode resultar em arquivos maiores.
Code
# Abrir um dispositivo gráfico BMPbmp("meu_grafico.bmp", width =800, height =600)# Criar o gráficoplot(1:10, (1:10)^7, main ="Gráfico de Exemplo em BMP", col ="cyan", pch =19)# Fechar o dispositivo gráficodev.off()