R 从csv创建图像直方图
我有一个csv文件,如下所示:R 从csv创建图像直方图,r,plot,R,Plot,我有一个csv文件,如下所示: 0,0 1,0 2,0 3,0 4,0 ... 250,1 251,0 252,0 253,2 254,2 255,9 它表示灰度图像的直方图。该文件指示color255出现9次,color250出现1次,以此类推 我在以下文件中阅读了该文件: df <- read.csv("/tmp/hist.csv", header= F, dec=",") 输出如下所示: 0,0 1,0 2,0 3,0 4,0 ... 250,1 251,0 252,0 253,
0,0
1,0
2,0
3,0
4,0
...
250,1
251,0
252,0
253,2
254,2
255,9
它表示灰度图像的直方图。该文件指示color255
出现9次,color250
出现1次,以此类推
我在以下文件中阅读了该文件:
df <- read.csv("/tmp/hist.csv", header= F, dec=",")
输出如下所示:
0,0
1,0
2,0
3,0
4,0
...
250,1
251,0
252,0
253,2
254,2
255,9
但我更希望得到的是x轴上0-255之间的颜色和y轴表示的频率。如何让R…绕轴旋转?否,hist(df$V2)
创建事件发生的柱状图(计数表)。因此,您正在绘制的内容与表(df$V2)
相同(您应该确认这一点以了解发生了什么)。我想这不是你想要的
相反,我假设您希望绘制所有256种颜色的颜色分布
您可以使用条形图在base R中执行此操作:
# Barplot base R
barplot(df[, 2], names.arg = df[, 1]);
或使用ggplot2
:
# (gg)plot
colnames(df) <- c("colour", "count");
ggplot(df, aes(x = as.factor(colour), y = count)) + geom_bar(stat = "identity");
#(gg)绘图
colnames(df)的可能副本请参见下面我的答案。您使用的hist
不正确。
# Your sample data
df <- read.csv(text =
"0,0
1,0
2,0
3,0
4,0
250,1
251,0
252,0
253,2
254,2
255,9", header = T)