更改点图中“y”轴的值排序

时间:2013-04-20 19:04:14

标签: r

以下代码:

avector <- as.vector(top.links.added.overall$Amount)
x <- as.vector(top.links.added.overall[order(avector),])
row.names(x) <- c("Yahoo" ,"Cnn", "Google")
x$color[x$Amount == 100] <- "red"
x$color[x$Amount == 500] <- "blue"
x$color[x$Amount == 1000] <- "darkgreen"
dotchart(x$Amount,
         labels = row.names(x),
         cex=.7,
         groups = x$Amount,
         gcolor = "black",
         color = x$color,
         pch=19,
         main = "Gas Mileage for Car Models\ngrouped by cylinder",
         xlab = "Miles Per Gallon")

生成此图表:

enter image description here

以下是数据集top.links.added.overall $ Amount:

的格式

enter image description here

这是文件数据集:

Amount,Name
1000,Google
500,Cnn
100,Yahoo

当我删除代码时:

row.names(x)&lt; - c(“Yahoo”,“Cnn”,“Google”)

我的行名称为1,2,3

我不需要我需要设置'y'轴的名称?如何修改图表的代码,以便具有最低数值的公司(在这种情况下是雅虎)从'y'轴的开头而不是顶部开始,这是当前发生的情况?

1 个答案:

答案 0 :(得分:3)

我认为我不能用提供的R数据对象来测试它,但可能是这些方面的东西:

x <- as.vector(top.links.added.overall[order(-avector),])
row.names(x) <- rev( c("Yahoo" ,"Cnn", "Google") )

对order参数和rev(反向)函数使用数学否定。

编辑:我现在理解你的挫败感,但在查看代码之后我决定尝试这个似乎做到了:

dotchart(x$Amount,
     labels = row.names(x),
     cex=.7,
     groups = -x$Amount,    # the code sorts by `as.numeric(groups)`
     gcolor = "black",
     color = x$color,
     pch=19,
     main = "Gas Mileage for Car Models\ngrouped by cylinder",
     xlab = "Miles Per Gallon")

enter image description here