具有给定数据的条形图

时间:2019-12-13 19:38:52

标签: r

下面的数据框称为中位数。价格

postcode medianprice
1       NG1      1127.0
2       NG2       900.0
3       NG3       975.0
4       NG4       750.0
5       NG5       650.0
6       NG6       650.0
7       NG7      1027.0
8       NG8       695.0
9       NG9       762.5
10     NG10       650.0
11     NG11       795.0
12     NG12      1197.5
13     NG14       775.0
14     NG15       575.0
15     NG16       600.0

这是通过以下方式实现的:

postcode <- c('NG1', 'NG2', 'NG3', 'NG4','NG5', 'NG6', 'NG7','NG8', 'NG9', 'NG10','NG11', 'NG12','NG14','NG15','NG16')

medianprice <- c(median(NG1$Price), median(NG2$Price), median(NG3$Price), 
median(NG4$Price),median(NG5$Price), median(NG6$Price), median(NG7$Price), 
median(NG8$Price), median(NG9$Price), median(NG10$Price), 
median(NG11$Price), median(NG12$Price), median(NG14$Price), 
median(NG15$Price), median(NG16$Price))

median.price <- data.frame(postcode, medianprice)

mpbarplot <- (table(median.price))

barplot(median.price)

返回“'height'必须是向量或矩阵”

barplot(mpbarplot) 

以堆叠的频率条形图返回。

2 个答案:

答案 0 :(得分:1)

barplot()接受一个向量,而中值。价格作为data.frame。因此,您需要提供要绘制的特定列和要绘制的名称列,如下所示:

您的数据:

median.price=
structure(list(postcode = structure(c(1L, 8L, 9L, 10L, 11L, 12L, 
13L, 14L, 15L, 2L, 3L, 4L, 5L, 6L, 7L), .Label = c("NG1", "NG10", 
"NG11", "NG12", "NG14", "NG15", "NG16", "NG2", "NG3", "NG4", 
"NG5", "NG6", "NG7", "NG8", "NG9"), class = "factor"), medianprice = c(1127, 
900, 975, 750, 650, 650, 1027, 695, 762.5, 650, 795, 1197.5, 
775, 575, 600)), class = "data.frame", row.names = c("1", "2", 
"3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", 
"15"))

这样做:

with(median.price,barplot(medianprice,names.arg=postcode,las=2,cex.axis=0.7))

enter image description here

答案 1 :(得分:1)

@StupidWolf的答案应该是经过验证的答案,而只是使用ggplot2发布替代答案。

它将使用数据框作为绘图的输入。因此,您可以直接使用数据(实际上是@StupidWolf提供的数据):

library(ggplot2)
ggplot(median.price, aes(x = postcode, y = medianprice))+
  geom_bar(stat = "identity")+
  scale_x_discrete(limits = as.character(median.price$postcode))

enter image description here

相关问题