【发布时间】:2019-05-30 02:54:58
【问题描述】:
我在下面有一个简单的数据框d,我想根据其值的频率创建一个直方图。我正在尝试将初始值设置为0,然后通过5 在x 轴上显示这些值,但这些值似乎都不起作用,因为值从1 开始,然后显示8。我发现发生这种情况是因为我的数据框没有 2 和 3 作为值,所以计数停止在 1 并且从 4 开始直到 8 因为我的数据框包含 4,5,6,7,8 作为值所以计数正常停止。
解决方案可能是 2。第一个是找到在轴上显示零频率值的方法,第二个是在轴上没有这些值的情况下设置正确的刻度格式。
我宁愿将一个清晰的情节解决方案作为首选,没有ggplot() 干扰。
d<-data.frame(c(1,5,7,5,4,5,6,7,8,9,10,15,13))
x <- list(
tick0=0,
dtick=5
)
# Create the plotly histogram
plot_ly(alpha = 0.9) %>%
add_histogram(x = as.factor(d[,1]),source="subset") %>%
# Add titles in plot and axes
layout(barmode = "overlay",xaxis=x,margin=list(b=100))
【问题讨论】:
-
省略
as.factor(): 即add_histogram(x = d[,1],source="subset") %>%是否有可能得到你想要的? -
add_histogram(x = d[,1], xbins = list(start=0, end=20, size=1)) %>%
-
感谢@tasasaki,它的工作原理是这样的,但条形之间没有间隙,但它很好。只是去除 rhe 因子是具有值范围的肌酸条。