【问题标题】:Mark outlier in parallel coordinate plot using ggparcoord使用 ggparcoord 在平行坐标图中标记异常值
【发布时间】:2017-07-05 05:53:33
【问题描述】:

我试图在平行坐标图中突出显示异常数据点。这是我的数据框的外观:

使用下面的代码,

library(devtools)
install_version("MMST", version = "0.6-1.1", repos = "http://cran.us.r-project.org")
MMST.out(dest.folder = '.',datasets='bodyfat')
ggparcoord(data = bodyfat, alphaLines = 0.2)

这是我的情节目前的样子:

我想用不同的颜色标记其中一条异常值线(如上图所示)。如何使用 ggplot2 实现这一目标?

【问题讨论】:

  • 您忘记了输入数据
  • ggparcoord中的数据中排除异常值并分别绘制它们..
  • ^是的,这行得通,谢谢。我之前试图再次使用 ggparcoord 绘制异常值,但后来发现可以使用基本的 geom_line()

标签: r plot charts ggplot2 parallel-coordinates


【解决方案1】:

如上面的 cmets 中所述,我从 ggparcoord 中的数据中提取了异常值,并将它们分别绘制出来。现在是新代码:

library(devtools)
install_version("MMST", version = "0.6-1.1", repos = "http://cran.us.r-project.org")
MMST.out(dest.folder = '.',datasets='bodyfat')
a=ggparcoord(data = bodyfat, alphaLines = 0.2)
out1=which.max(a$data[a$data$variable=='hip',]$value)
out2=which.max(a$data[a$data$variable=='ankle',]$value)
df1=a$data[a$data$.ID==out1,]
df2=a$data[a$data$.ID==out2,]
a + geom_line(data = df1 ,aes(y=value), color='red', alpha=0.5) +
geom_line(data = df2 ,aes(y=value), color='blue', alpha=0.5)

这就是输出的样子:

PCP with highlighted outliers

感谢您的帮助。

【讨论】:

    猜你喜欢
    • 2020-01-07
    • 1970-01-01
    • 2021-11-06
    • 2020-08-27
    • 2020-12-24
    • 1970-01-01
    • 2020-02-01
    • 2012-01-04
    • 2017-07-22
    相关资源
    最近更新 更多