2016-07-18 6 views
2

У меня есть только серия чисел, и я хочу подсчитать количество каждого элемента. Вот что я сделал. Ось X - это мой элемент, а ось Y - это число каждого элемента.Изменить количество тиков по оси x?

enter image description here

Мой вопрос, как я мог бы пересмотреть способ представления в оси х? Я хочу видеть только 0,4, 0,5, 0,6, 0,7, 0,8 и 0,9 по оси, но все же для того, чтобы на том же количестве баров на рисунке (ничего не изменилось). Любое предложение, пожалуйста?

d1 <- ggplot(TestData, aes(factor(TestData$Col1))) 
d2 <- d1 + geom_bar() + xlab("") + ylab("") 
+0

Вы хотите гистограмму или гистограмму? Если вы используете гистограмму, используйте 'Col1' как непрерывную переменную и' geom_histogram' и посмотрите, поможет ли это. Кроме того, не используйте знаки доллара в 'aes', просто обращайтесь к переменной напрямую. – aosmith

+0

+ scale_x_continuous (breaks = seq (0,4, 0,9, 0,1)) должен сделать трюк – Krishna

ответ

2

Создать данные со средним значением 0,5, std 0,2:

data<- rnorm(1000,0.5,0.2) 
dataf <- data.frame(data) 

Сделать гистограмму для всех данных ra Нге:

ggplot(aes(x = data),data = dataf) + 
geom_histogram() 

enter image description here

Xlim до 0,4 до 0,9:

ggplot(aes(x = data),data = dataf) + 
geom_histogram() + 
    scale_x_continuous(limits = c(0.4,0.9), 
    breaks= scales::pretty_breaks(n=5)) 

enter image description here

1

В базовых графиках, вы можете просто опустить ось при создании сюжета, а затем добавить их вручную с помощью axis функции:

set.seed(1234) 
dat <- rnorm(1000, 0.5, 0.1) 
hist(dat, axes = FALSE, xlim = c(0, 1)) 
axis(side = 2) 
axis(side = 1, at = seq(0.4, 0.9, 0.1)) 

enter image description here

+0

Спасибо, как насчет использования ggplot2? @dayne – BigSecrect

+0

Я делаю все в базе R - я предпочитаю его ggplot. Зачем вам здесь ggplot? – dayne

+0

Спасибо, так же, как вы использовали базовый R, но добиться того же, используя ggplot? (Если это вас не беспокоит.) – BigSecrect

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