0
이 그래프를 얻기 위해 R ggplot2에서 어떤 함수를 사용해야합니까? 여기R ggplot2를 사용하여 "방사형 막대 그래프"를 얻는 방법?
은 숫자 "2"및 "6"은 다른 각도 분할을 셀의 개수에 관한 것이다.
이 그래프를 얻기 위해 R ggplot2에서 어떤 함수를 사용해야합니까? 여기R ggplot2를 사용하여 "방사형 막대 그래프"를 얻는 방법?
은 숫자 "2"및 "6"은 다른 각도 분할을 셀의 개수에 관한 것이다.
This 더 나은 대답 일 수 있습니다. 기본 그래픽을 사용하는 것도 가능하지만 더 많은 작업이 필요할 수도 있습니다. 여기에 예제가 있습니다.
d <- structure(list(Angle = c(0, 10, 20, 30, 40, 50, 60, 70, 80, 90,
100, 110, 120, 130, 140, 150, 160, 170, 180, 190, 200, 210, 220,
230, 240, 260, 270, 280, 290, 300, 310, 320, 330, 340, 350, 250
), Frequency = c(0, 0, 0.001, 2, 4, 18.03, 11, 12, 5, 7, 10,
13, 2, 0.003, 0.01, 0, 1, 0.05, 2, 3, 3.7, 6, 0, 0, 0, 0, 0.2,
0.006, 0, 0, 0, 0, 0, 0, 0, 0)), .Names = c("Angle", "Frequency"
), row.names = c(NA, 36L), class = "data.frame")
d$radian = d$Angle*pi/180
d$x = d$Frequency*cos(d$radian)
d$y = d$Frequency*sin(d$radian)
m = max(d$x, d$y)
graphics.off()
windows(width = 6, height = 6)
plot(x = m,
y = m,
xlim = c(-m,m),
ylim = c(-m,m),
type = "n",
asp = 1,
axes = FALSE,
xlab = "",
ylab = "")
par(xpd = TRUE)
symbols (x =c(0,0,0,0,0), y = c(0,0,0,0,0), circles=c(3,6,9,12,15), fg = "grey",
add = TRUE, inches = FALSE, lty = 2)
lines(x = c(-15,15), y = c(0,0), lty = 2)
lines(x = c(0,0), y = c(-15,15), lty = 2)
text(x = c(0,0,-15,15), y = c(-15,15,0,0),
labels = c("180","0","270","90"), pos = c(1,3,2,4))
for (i in 1:nrow(d)){
lines(x = c(0,d$x[i]), y = c(0,d$y[i]), lwd = 3)
}
참고 : 라벨이 정말 멋지다
각도 때 내가 망쳐! 그러나 어떻게 "라인"이 작은 분야와 마찬가지로 "조직적"이 될 수 있을까? – xiaoyong
미안합니다. @ d.b. 이 그래프는 실제로 다른 각도의 세포 빈도를 나타낼 수 있습니다. 그러나 이것은 히스토그램이 아닌 선 그래프입니다. 히스토그램을 만드는 방법? 막대 모양처럼 보이도록 lwd = 8을 변경했지만 히스토그램이 아닙니다. – xiaoyong
@ xiaoyong, 동의합니다. 원한다면'polygon'을 사용할 수는 있지만 훨씬 복잡합니다. –