2017-01-28 13 views
2
pdf("whatever.pdf", height=4,width=8) 
B <- c(0,0.585,0.043,0.006,0.012,0.244,0.004,0.008,0.119,0.012,0.095) 
barplot(B, names.arg = c("ce","de","en","es","fr","it","ja","nl","ru","sv","All"), las=1, ylim=c(0, 0.6)) 
dev.off() 

Ось Y в процентах, как заставить метки оси Y использовать суффикс «%»?R barplot - как добавить y-ось '%' суффикс?

ответ

1

Мы можем использовать axis аргумент после settting в yaxt к 'п' в barplot

par(las = 1) 
barplot(B, names.arg = c("ce","de","en","es","fr","it","ja","nl","ru","sv","All"), 
      las=1, ylim=c(0, 0.6), yaxt="n") 
axis(2, at = seq(0, 0.6, by = 0.1), labels = paste0(seq(0, 0.6, by = 0.1), "%")) 

Или мы можем указать las в axis вместо par(las = 1) т.е.

axis(2, at = seq(0, 0.6, by = 0.1), labels = paste0(seq(0, 0.6, by = 0.1), "%"), las = 1) 

enter image description here

+0

Спасибо, но метки Y-оси теперь неправильно ориентированы вертикально. Раньше я использовал 'las = 1', чтобы избежать этой проблемы, но ваше исправление, похоже, нарушает это. (Пожалуйста, извините мою нехватку R!). – mwra

+0

@mwra Это можно исправить, указав его в 'par' – akrun

+0

Не уверен, что вы изменили, но спасибо! – mwra

1

После ответа @ Akrun Ниже ответ, используя ggplot2

B <- c(0, 0.585,0.043,0.006,0.012,0.244,0.004,0.008,0.119,0.012,0.095) 
A <- c("ce","de","en","es","fr","it","ja","nl","ru","sv","All") 
df <- as.data.frame(cbind(A, B)) 

df$B<-as.numeric(as.character(df$B)) 

ggplot(df, aes(x = A, y = B))+ 
    geom_bar(stat= "identity")+ 
    scale_y_continuous(breaks = seq(0, 0.6, by = 0.1), 
        labels = paste(seq(0, 0.6, by = 0.1), "%"))+ 
    labs(x = "", y = " ") 

enter image description here

 Смежные вопросы

  • Нет связанных вопросов^_^