ggplot2 - 如何在玫瑰图中不显示零值
ggplot2 - how to not display zero value in rose diagram
我正在将值从 .csv 加载到 R,其中包含以下数据:
Time Way Data1
1 0 Type1 0,0586865
2 1 Type1 0,05674993
3 2 Type1 0,067387033
4 3 Type1 0,064299747
5 4 Type1 0,06241931
6 5 Type1 0,070333988
7 6 Type1 0,07956778
8 7 Type1 0,066797642
9 8 Type1 0,061015998
10 9 Type1 0,050463093
11 10 Type1 0,037412293
12 11 Type1 0,023323042
13 12 Type1 0,021975863
14 13 Type1 0,011787819
15 14 Type1 0,014201516
16 15 Type1 0,023351109
17 16 Type1 0,034689868
18 17 Type1 0,035812518
19 18 Type1 0,034100477
20 19 Type1 0,022312658
21 20 Type1 0,015239966
22 21 Type1 0,017204603
23 22 Type1 0,031209655
24 23 Type1 0,039657592
25 0 Type2 0,01
26 1 Type2 0,02
27 2 Type2 0
28 3 Type2 0,01
29 4 Type2 0,01
30 5 Type2 0
31 6 Type2 0
32 7 Type2 0
33 8 Type2 0,02
34 9 Type2 0
35 10 Type2 0
36 11 Type2 0,01
37 12 Type2 0
38 13 Type2 0,01
39 14 Type2 0
40 15 Type2 0,02
41 16 Type2 0
42 17 Type2 0,01
43 18 Type2 0
44 19 Type2 0
45 20 Type2 0
46 21 Type2 0,01
47 22 Type2 0
48 23 Type2 0
如您所见,Type2 中的某些值的值为 0。当我使用此数据显示玫瑰图时,它显示了不应该的零值。
下图link显示输出:http://i61.tinypic.com/b81lvq.png
我的代码是:
library(ggplot2)
nameOfDataExcel <- file.path(path, "data.csv")
data <- read.csv(file=nameOfDataExcel,head=TRUE,sep=";")
cols <- c("red","blue")
p<-ggplot(data, aes(x = data$Time, y=data$Data1, fill=data$Way)) +
geom_bar(breaks = seq(0,24), width = 1, colour="black", stat = "identity") +
scale_fill_manual(values = cols) +
theme_minimal() + coord_polar(theta = "x") +
scale_x_continuous("", breaks = seq(0, 24), labels = seq(0,24))
p
如何忽略零值,使它们不显示在图表中?
我怀疑是因为文件在加载时用逗号 (,
) 分隔数字,因此无法正确读取数据。当我用 .
替换逗号并导入时,我的绘图没有为 0.
绘制的值
尝试使用 readr
优雅地处理带有逗号数字分隔符的文件:
install.packages("readr")
require("readr")
data <- read_csv2("~/Desktop/data.csv")
假设您的文件不是用逗号(可能是分号)分隔的。你应该得到:
您的问题是您的小数点分隔符是句号。 Base R read.*
函数可以通过 dec
参数处理这个问题。
特别是,read.csv2
和 read.delim2
dec
的默认参数是 ,
。
或者,类似
read.table("file1.txt", dec=",", sep="\t")
应该可以解决问题。
我正在将值从 .csv 加载到 R,其中包含以下数据:
Time Way Data1
1 0 Type1 0,0586865
2 1 Type1 0,05674993
3 2 Type1 0,067387033
4 3 Type1 0,064299747
5 4 Type1 0,06241931
6 5 Type1 0,070333988
7 6 Type1 0,07956778
8 7 Type1 0,066797642
9 8 Type1 0,061015998
10 9 Type1 0,050463093
11 10 Type1 0,037412293
12 11 Type1 0,023323042
13 12 Type1 0,021975863
14 13 Type1 0,011787819
15 14 Type1 0,014201516
16 15 Type1 0,023351109
17 16 Type1 0,034689868
18 17 Type1 0,035812518
19 18 Type1 0,034100477
20 19 Type1 0,022312658
21 20 Type1 0,015239966
22 21 Type1 0,017204603
23 22 Type1 0,031209655
24 23 Type1 0,039657592
25 0 Type2 0,01
26 1 Type2 0,02
27 2 Type2 0
28 3 Type2 0,01
29 4 Type2 0,01
30 5 Type2 0
31 6 Type2 0
32 7 Type2 0
33 8 Type2 0,02
34 9 Type2 0
35 10 Type2 0
36 11 Type2 0,01
37 12 Type2 0
38 13 Type2 0,01
39 14 Type2 0
40 15 Type2 0,02
41 16 Type2 0
42 17 Type2 0,01
43 18 Type2 0
44 19 Type2 0
45 20 Type2 0
46 21 Type2 0,01
47 22 Type2 0
48 23 Type2 0
如您所见,Type2 中的某些值的值为 0。当我使用此数据显示玫瑰图时,它显示了不应该的零值。
下图link显示输出:http://i61.tinypic.com/b81lvq.png
我的代码是:
library(ggplot2)
nameOfDataExcel <- file.path(path, "data.csv")
data <- read.csv(file=nameOfDataExcel,head=TRUE,sep=";")
cols <- c("red","blue")
p<-ggplot(data, aes(x = data$Time, y=data$Data1, fill=data$Way)) +
geom_bar(breaks = seq(0,24), width = 1, colour="black", stat = "identity") +
scale_fill_manual(values = cols) +
theme_minimal() + coord_polar(theta = "x") +
scale_x_continuous("", breaks = seq(0, 24), labels = seq(0,24))
p
如何忽略零值,使它们不显示在图表中?
我怀疑是因为文件在加载时用逗号 (,
) 分隔数字,因此无法正确读取数据。当我用 .
替换逗号并导入时,我的绘图没有为 0.
尝试使用 readr
优雅地处理带有逗号数字分隔符的文件:
install.packages("readr")
require("readr")
data <- read_csv2("~/Desktop/data.csv")
假设您的文件不是用逗号(可能是分号)分隔的。你应该得到:
您的问题是您的小数点分隔符是句号。 Base R read.*
函数可以通过 dec
参数处理这个问题。
特别是,read.csv2
和 read.delim2
dec
的默认参数是 ,
。
或者,类似
read.table("file1.txt", dec=",", sep="\t")
应该可以解决问题。