J'ai obtenu ce complot en utilisant le code ci-dessous
Dans mon intrigue, je veux que le NO3 ait le signe négatif "-" en exposant comme ci-dessous
Dans l'étiquette de l'axe des x, je ne pouvais pas utiliser le signe négatif uniquement en exposant de NO3, j'ai donc dû utiliser -1 comme indiqué ci-dessous
x <- seq(0,2*pi,0.1)
y <- sin(x)
df <- data.frame(x, y)
ggplot(df, aes(x=x, y=y))+
geom_point(size=4)+
labs(x=expression(Production~rate~" "~mu~moles~NO[3]^{-1}-N~Kg^{-1}),
y=expression(Concentration~mg~L^{-1}))
Des suggestions sur la façon de changer l'étiquette pour avoir un signe négatif uniquement sans 1?
Essayez de citer le signe moins après l'opérateur en exposant:
ggplot(df, aes(x=x, y=y))+
geom_point(size=4)+
labs(x=expression(Production~rate~" "~mu~moles~NO[3]^{"-"}-N~Kg^{-1}),
y=expression(Concentration~mg~L^{-1})) +
theme(legend.title = element_text(size=12, face="bold"),
legend.text=element_text(size=12),
axis.text=element_text(size=12),
axis.title = element_text(color="black", face="bold", size=18))
Je pense qu'il semble plus scientifiquement précis d'utiliser l'opérateur %.%
Entre les unités:
+ labs(x=expression(Production~rate~" "~mu~moles~NO[3]^{textstyle("-")}-N %.% Kg^{-1}),
y=expression(Concentration~mg~L^{-1})) +
textstyle
devrait empêcher la taille du texte en exposant d'être réduit. Je ne sais pas non plus pourquoi vous avez un " "
Entre deux tildes. Vous pouvez enchaîner un tas de tildes ensemble pour augmenter les "espaces":
ggplot(df, aes(x=x, y=y))+
geom_point(size=4)+
labs(x=expression(Production~rate~~~~~~~~~~~~mu~moles~NO[3]^{textstyle("-")}-N %.% Kg^{-1}),
y=expression(Concentration~mg~L^{-1})) +
theme(legend.title = element_text(size=12, face="bold"),
legend.text=element_text(size=12),
axis.text=element_text(size=12),
axis.title = element_text(color="black", face="bold", size=18))
Et une astuce bonus de plotmath: la citation de nombres est un moyen de contourner la difficulté documentée de produire des chiffres en italique avec plotmath. (L'utilisation de italic(123)
ne réussit pas, ... mais italic("123")
réussit.)