2016-06-07 5 views
0

У меня есть набор данных, который выглядит так.Построение гистограммы в ggplot в правильном направлении

score <- c(0,0,0,1,2,3,-2,-1) 
df <- data.frame(score) 

Теперь я хотел бы построить гистограмму, используя функцию ggplot:

g <- ggplot(data = df, aes(x = score)) 
g + geom_histogram(breaks = seq(-3,3,by=1), col = "red", fill = "green", alpha = .2) + labs(x="Age", y="Count") 

Он выглядит и работает нормально, но мне интересно, если оси помечены правильно? Я также чувствую, что гистограмма слабо отрицательна. На самом деле я хотел бы построить его так, чтобы он располагался в центре с -0.5 до +0.5.

Любые мысли о том, как я могу заставить это работать?

+0

Почему вы не просто делать это ломает = (SEQ -2.5,2.5, по = 1) –

ответ

0

Удалить аргумент брейки и установить binwidth к 1.

g + geom_histogram(col = "red", fill = "green", alpha = .2,binwidth = 1) + labs(x="Age", y="Count")

0

Если вы хотите, чтобы сделать гистограмму «сбалансированным», показывая планку для каждого значения в пределах -3: 3 диапазона, вам также можете попробовать это. Он вычисляет частоту для каждого значения с помощью table затем добавляет манекен для -3 с частотой 0.

score <- c(0,0,0,1,2,3,-2,-1) 
df <- data.frame(score) 

df2 <- data.frame(table(df)) 
df2 <- rbind(data.frame(df = "-3", Freq = 0), df2) 

ggplot(df2, aes(x = df, y = Freq)) + 
    geom_bar(stat = "identity", col = "red", fill = "green", alpha = .2) + 
    labs(x="Age", y="Count") 

enter image description here

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