Как изменить научную нотацию в метках условных обозначений в ggplot2

#r #ggplot2

#r #ggplot2

Вопрос:

Я написал этот код для создания карты.

 ggplot(data = Canada2015_Import_3)  
  borders(database = "world", 
          colour = "grey60",
          fill="grey90")   
  geom_polygon(aes(x=long, y=lat, group = group, fill = Trade_Value_mean),
               color = "grey60")  
  scale_fill_gradient(low = "blue", high = "red", name = "Trade Value")   
  ggtitle("Canadien Imports in 2015")   
  xlab("")   ylab("")   
  theme(panel.background = element_blank(),
        plot.title = element_text(face = "bold"),
        axis.title.x=element_blank(),
        axis.text.x=element_blank(),
        axis.ticks.x=element_blank(),
        axis.title.y=element_blank(),
        axis.text.y=element_blank(),
        axis.ticks.y=element_blank())
 

Эта карта дает мне легенду с научной нотацией, и я хотел бы изменить ее на обычную или с запятыми.

введите описание изображения здесь

Кто-нибудь знает, как это сделать?

Вот базовая структура моего фрейма данных.

 Country   Trade_Value_mean  long      lat     group order subregion
Afghanistan    2359461     74.89131 37.23164     2    12      <NA>
 

Любая помощь приветствуется.

Ответ №1:

Я понял это. По сути, все, что вам нужно сделать, это вставить библиотеку scales и добавить labels = comma . Вот измененный код :

 library(scales) 

ggplot(data = Canada2015_Import_3)  
  borders(database = "world", 
          colour = "grey60",
          fill="grey90")   
  geom_polygon(aes(x=long, y=lat, group = group, fill = Trade_Value_mean),
               color = "grey60")  
  scale_fill_gradient(low = "blue", high = "red", name = "Trade Value", labels = comma)   
  ggtitle("Canadien Imports in 2015")   
  xlab("")   ylab("")   
  theme(panel.background = element_blank(),
        plot.title = element_text(face = "bold"),
        axis.title.x=element_blank(),
        axis.text.x=element_blank(),
        axis.ticks.x=element_blank(),
        axis.title.y=element_blank(),
        axis.text.y=element_blank(),
        axis.ticks.y=element_blank())
 

Ответ №2:

вы также можете использовать в начале своего кода:

 options(scipen=10000)