我有一个两列的数据,如下所示,我确实需要创建一个条形极坐标图(从零到90度的四分之一圈极坐标图)。
Angle Frequency
0-10 83.3
10_20 16.6
20_30 5.7
30_40 62.3
40_50 32.4
我尝试如下使用ggplot2
,但是它创建了一个360度的圆。我找不到如何使其变成四分之一圆(而不是360度圆)。
d <- structure(list(Angle = c(10, 20, 30, 40, 50),
Frequency = c(83.3, 16.6, 5.7, 62.3, 32.4)), .Names = c("Angle", "Frequency"),
row.names = c(NA, 5L), class = "data.frame")
library("ggplot2")
ggplot(d, aes(x = Angle, y = Frequency)) +
coord_polar(theta = "x", start = -pi/36, direction = 1) +
geom_bar(stat = "identity") +
scale_x_continuous(limits=c(0,90), breaks = seq(0, 90, 10))
我还尝试使用plotly
,如下所示:
library("plotly")
p <- plot_ly(
type = 'barpolar',
r = c(54.7, 32.6, 8.4, 10.4, 30.6),
theta = c(0, 10, 20, 30, 40)) %>%
layout(
polar = list(
radialaxis = list(
visible = T,
range = c(0,60)
),
sector = c(0,90),
radialaxis = list(
tickfont = list(
size = 10
)
),
angularaxis = list(
tickfont = list(
size = 10
)
)
)
)
但是,我需要使用plotly
更改已创建的条形极坐标图的某些功能,但找不到如何修改它们的功能。
这是我的问题:
对于使用ggplot2
制作的图形:如何制作四分之一圆(而不是完整的360度圆)?
对于使用plotly
制作的图形:
1)如何修改垃圾箱的间隔?在我当前的图表中,角度分为15度增量:0、15、30、45、60、75和90度。我需要将此间隔更改为10,并分别进行0、10、20、30、40、50、60、70、80和90的除法。我该怎么做?
2)如何更改条形的颜色?现在所有五个条形均为蓝色,但是我想将蓝色更改为例如黑色,红色或任何颜色。
非常感谢您的宝贵帮助。非常感谢。