Eu acredito que meu dataframe está bom e meu código está bom. Na verdade, eliminei partes do quadro de dados e a maior parte do código gráfico para tornar as coisas o mais básicas possível. Mesmo assim, eu consigo:
Error in .Call.graphics(C_palette2, .Call(C_palette2, NULL)) :
invalid graphics state
O que há de errado aqui? Aqui estão os dados:
date trt var val
1/8/2008 cc sw5 0.2684138
1/8/2008 cc sw15 0.2897586
1/8/2008 cc sw5 0.2822414
2/8/2008 cc sw5 0.2494583
2/8/2008 cc sw5 0.2692917
2/8/2008 cc sw15 0.2619167
2/8/2008 cc sw5 0.204375
3/8/2008 cc sw5 0.2430625
3/8/2008 cc sw5 0.2654375
3/8/2008 cc sw5 0.2509583
3/8/2008 cc sw5 0.2055625
1/8/2008 ccw sw15 0.2212414
1/8/2008 ccw sw5 0.3613448
1/8/2008 ccw sw5 0.2607586
2/8/2008 ccw sw5 0.2087917
2/8/2008 ccw sw15 0.3390417
2/8/2008 ccw sw5 0.2436458
2/8/2008 ccw sw5 0.290875
3/8/2008 ccw sw5 0.20175
3/8/2008 ccw sw15 0.328875
3/8/2008 ccw sw5 0.2328958
3/8/2008 ccw sw5 0.2868958
Quando trabalho com esses dados, especifico datas como esta:
df<-df[order(as.Date(df$date,format="%d/%m/%Y")),,drop=FALSE]
e aqui eu quero fazer um gráfico de dispersão:
ggplot(data = df,aes(x = date,y = val)) +
geom_point(aes(group = trt))
ggplot2
instalou originalmente?Respostas:
Encontrei este mesmo erro e resolvi executando:
e então rodar o enredo novamente. Acho que o dispositivo gráfico foi bagunçado anteriormente de alguma forma ao exportar alguns gráficos e não foi reiniciado. Isso funcionou para mim e é mais simples do que reinstalar o ggplot2.
fonte
par(mfrow = c(..., ...))
antes. Não sei sobre outros parâmetros gráficos, mas eles podem causar este problema.A solução é simplesmente reinstalar
ggplot2
. Talvez haja uma incompatibilidade entre a versão R que você está usando e a versão instaladaggplot2
. Como alternativa, algo pode ter dado errado durante a instalaçãoggplot2
anterior, causando o problema que você vê.fonte
dev.off()
não funcionou para mim e é uma boa segunda opção para tentar reinstalar o ggplot2.dev.off()
primeiro, leva menos tempo do que reinstalar o pacote. Esta pode ser uma segunda etapa sedev.off()
não funcionar.Descobri que isso ocorre quando você mistura gráficos ggplot com gráficos plot na mesma sessão. Usar a solução 'dev.off' sugerida por Paul resolve o problema.
fonte
dev.off'
faz?Você provavelmente não precisa reinstalar o ggplot2
Solução: volte para o gráfico que não funcionou anteriormente. Veja a saída do console abaixo, por exemplo. As margens da figura (a janela que exibe seus gráficos) eram muito pequenas para exibir o gráfico de pares (MinusInner). Então, quando tentei fazer o próximo qplot, R ainda estava preso ao erro anterior.
Corrigi o primeiro erro expandindo a janela do gráfico e executando novamente o gráfico de pares (MinusInner). Então, blam, funcionou.
fonte
Resolvi isso limpando todas as plotagens no console e, em seguida, certificando-me de que a área da plotagem era grande o suficiente para acomodar o que estava criando.
fonte
tente obter graficos com
x11()
ouwin.graph()
e resolva este problema.fonte