条形图的所有频率都相同吗?

时间:2019-05-28 06:26:49

标签: r

尝试绘制CSV文件的图表,尽管频率在450-800之间变化,该图仍将所有类别显示为相同的高度

下面是我收到的情节

https://imgur.com/9HZuiaK

我尝试实现height = x,width = x 这样会导致完全去除标签,并且无法解决最初的问题。

$url

1 个答案:

答案 0 :(得分:0)

我认为您错误地使用了table函数,因为您已经计算了模态数。因此,它既不是图形问题也不是功能问题。您所要做的就是计算频率,如下所示:

Intentional.self.harm..suicide. = c(535L, 
                                    579L, 480L, 541L, 499L, 537L, 466L, 453L, 459L, 494L, 520L, 553L, 
                                    525L, 588L, 578L, 631L, 676L, 656L, 757L, 673L)

df <- Intentional.self.harm..suicide.
barplot(height = df) # correct barplot with counts

df_prop <- table(df) # gives a table that count modalities (all unique ie 1)
str(df_prop)

# With a data.frame if you want to include labels
df_prop <- data.frame(
        "type" = paste0("t", 1:20),
        "freq" = df/sum(df) # alternatively use prop.table(df)
)

# sum(df_prop$freq) # to check
barplot(height = df_prop$freq) # same 'profile' than first barplot

# --- EDIT / Follow up
# looking at documentation of barplot to set labels and ordinate limits
?barplot

barplot(height = df_prop$freq, names.arg = df_prop$type, ylim=c(0, max(df_prop$freq * 1.2)))