【发布时间】:2017-08-23 23:13:02
【问题描述】:
我有 2 个数据列表。
a = c(0, 14400, 15000, 1600)
b = c(0, 1.1, 2.3, 4.5)
我想使用径向图使用极坐标(径向)坐标绘制图形。 我想要 r=theta,所以 r 和 theta 的坐标值在列表“a”中。
对于点的颜色,我想使用列表“b”来使用条件指定每个点的颜色。 例如: 如果 b 中元素的值小于 1,则该元素的颜色为黑色。 如果 b 中元素的值介于 1 和 2 之间,则颜色为绿色。 如果b中元素的值大于3,则颜色为红色。
所以结果列表将是:
c = c("black", "green", "red", "red")
最后一步是使用列表“c”为元素着色。 总之,我的问题的答案需要两个步骤: 1) 创建一个新列表“c”,其中包含基于 b 值的颜色名称列表 2)在径向图中使用列表c为图中的每个符号着色(我不知道这是否可能)
这是我目前所拥有的。
pp <- radial.plot(a, a, start = -pi/3, rp.type = "s", clockwise = TRUE, point.symbols=19)
pp
实际数据要大得多,但我只提供一个小示例代码来专注于我需要解决的 2 个问题。 我能够使用 ggplot2 生成这个图。但是,由于其他原因,我更愿意使用 plotrix 包中的radial.plot 函数(极坐标/径向坐标的代码似乎更简单易用)。
请帮忙,我是 R 新手。谢谢。
【问题讨论】:
标签: r list polar-coordinates plotrix