Tag: ggplot2

图例放置,ggplot,相对于绘图区域

这里的问题有点显而易见。 我想把这个图例置于(locking)在“绘图区域”的左上angular。 由于许多原因,使用c(0.1,0.13)等不是一种select。 有没有办法改变坐标的参考点,以便它们相对于绘图区域? mtcars$cyl <- factor(mtcars$cyl, labels=c("four","six","eight")) ggplot(mtcars, aes(x=wt, y=mpg, colour=cyl)) + geom_point(aes(colour=cyl)) + opts(legend.position = c(0, 1), title="Legend placement makes me sad") 干杯

从R中提取POSIXct中的小时和秒作为绘图目的

假设我有以下data.frame foo start.time duration 1 2012-02-06 15:47:00 1 2 2012-02-06 15:02:00 2 3 2012-02-22 10:08:00 3 4 2012-02-22 09:32:00 4 5 2012-03-21 13:47:00 5 和class(foo$start.time)返回 [1] "POSIXct" "POSIXt" 我想创build一个foo$duration foo$start.time 。 在我的情况下,我只对一天的时间感兴趣,而不是一年中的实际一天。 如何从POSIXct类的向量中提取小时:秒的时间?

ggplot2保持未使用的水平barplot

我想在我的条形图中绘制未使用的级别(也就是计数为0的级别),但是,未使用的级别会丢失,我无法弄清楚如何保留它们 df <- data.frame(type=c("A", "A", "A", "B", "B"), group=rep("group1", 5)) df$type <- factor(df$type, levels=c("A","B", "C")) ggplot(df, aes(x=group, fill=type)) + geom_bar() 在上面的例子中,我想看到C绘制计数为0,但它是完全没有… 感谢任何帮助Ulrik 编辑: 这是我想要的 df <- data.frame(type=c("A", "A", "A", "B", "B"), group=rep("group1", 5)) df1 <- data.frame(type=c("A", "A", "A", "B", "B", "A", "A", "C", "B", "B"), group=c(rep("group1", 5),rep("group2", 5))) df$type <- factor(df$type, levels=c("A","B", "C")) df1$type <- […]

如何在ggplot2中移动或定位图例

我正在试图创build一个ggplot2阴谋与图下的传说。 ggplot2书上第112页说:“图例的位置和理由由主题设置legend.position控制,值可以是右,左,上,下,无(无图例)或数字位置”。 下面的代码可以工作(因为“right”是默认的),它也可以作为图例位置使用“none”,但是“left”,“top”,“bottom”,全部失败,出现“Error in grid.Call .graphics(“L_setviewport”,pvp,TRUE):视口的非有限位置和/或大小“ library(ggplot2) (myDat <- data.frame(cbind(VarX=10:1, VarY=runif(10)), Descrip=sample(LETTERS[1:3], 10, replace=TRUE))) qplot(VarX,VarY, data=myDat, shape=Descrip) + opts(legend.position="right") 我究竟做错了什么? 重新定位一个传奇必定非常普遍,所以我认为这是我。

在ggplot2中使用facet_wrap和scales =“free”来设置单独的轴限制

我正在创build一个分面图,用预测值与残差图并排查看预测值与实际值。 我将使用shiny来帮助探索使用不同的训练参数进行build模的结果。 我用85%的数据训练模型,testing其余的15%,并重复这5次,每次收集实际/预测值。 计算残差后,我的data.frame如下所示: head(results) act pred resid 2 52.81000 52.86750 -0.05750133 3 44.46000 42.76825 1.69175252 4 54.58667 49.00482 5.58184181 5 36.23333 35.52386 0.70947731 6 53.22667 48.79429 4.43237981 7 41.72333 41.57504 0.14829173 我想要的是: pred与act和pred与resid并排情节 pred与pred的x / y范围/限制是相同的,理想情况下从min(min(results$act), min(results$pred))到max(max(results$act), max(results$pred)) pred与resid的x / y范围/限制不会受到我对实际vs.预测图表的影响。 仅对预测值绘制x并且仅绘制剩余范围的y是很好的。 为了同时查看这两个图,我将数据融化: library(reshape2) plot <- melt(results, id.vars = "pred") 现在绘制: library(ggplot2) p <- […]

ggplot中的酒吧sorting

我已经看了这个论坛的答案,但似乎无法find这个具体问题的答案。 我有以下数据,并且希望创build一个条形图,其中条形图按“值”从大到小sorting,而不是按字母顺序排列: breadth_data <- read.table(textConnection("Stakeholder Value 'Grantseekers' 0.90 'Donors' 0.89 'Community' 0.55 'Hurricane Relief Fund' 0.24 'Media' 0.19 'Employment Seekers' 0.12 'Affiliates' 0.10 'Youth' 0.09 'Women' 0.02 'Former Board Members' 0.01"), header=TRUE) 那么基本的条形图: c <- ggplot(breadth_data, aes(x=Stakeholder, y=Value)) c + geom_bar(stat="identity") + coord_flip() + scale_y_continuous('') + scale_x_discrete('') 我已经尝试了很多不同的重sorting和转换,我看到了StackOverflow,但我似乎无法find一个工程。 我相信这是相当简单的,但我将不胜感激任何帮助! 谢谢, 格雷格

在ggplot中编辑图例(文本)标签

我花了几个小时看文档和StackOverflow,但没有解决scheme似乎解决了我的问题。 当使用ggplot我不能在图例中获得正确的文本,即使它在我的数据框中。 我已经尝试了scale_colour_manual , scale_fill_manual使用不同的labels=值,例如c("T999", "T888")", "cols" 。 这是我的代码: T999 <- runif(10, 100, 200) T888 <- runif(10, 200, 300) TY <- runif(10, 20, 30) df <- data.frame(T999, T888, TY) ggplot(data = df, aes(x=T999, y=TY, pointtype="T999")) + geom_point(size = 15, colour = "darkblue") + geom_point(data = df, aes(x=T888, y=TY), colour = 'red', size = 10 ) […]

ggplot2中的数字格式轴标签?

我使用ggplot2 0.9.1绘制一个相当简单的图表。 x <- rnorm(100, mean=100, sd = 1) * 1000000 y <- rnorm(100, mean=100, sd = 1) * 1000000 df <- data.frame(x,y) p.new <- ggplot(df,aes(x,y)) + geom_point() print(p.new) 哪些工作,但ggplot2默认为科学记数法是不适合我的观众。 如果我想input以下内容来更改x轴标签格式: p.new + scale_x_continuous(labels = comma) 我得到: Error in structure(list(call = match.call(), aesthetics = aesthetics, : object 'comma' not found 我究竟做错了什么? 我注意到,语言最近从“格式化程序”更改为“标签”。 也许我误解了手册页? 编辑:我确实误读了手册页 在尝试这个之前需要加载library(scales) […]

如何使用ggplot2将R中的每个条形图放在geom_bar上

我发现了这个, 如何使用ggplot2将标签放在R中的geom_bar上 ,但是它只是把标签(数字)放在一个条上。 我们假设,每个x轴有两个小节,如何做同样的事情? 我的数据和代码如下所示: dat <- read.table(text = "sample Types Number sample1 A 3641 sample2 A 3119 sample1 B 15815 sample2 B 12334 sample1 C 2706 sample2 C 3147", header=TRUE) library(ggplot2) bar <- ggplot(data=dat, aes(x=Types, y=Number, fill=sample)) + geom_bar(position = 'dodge') + geom_text(aes(label=Number)) 那么,我们会得到: 数字文字似乎也被定位在“闪避”模式。 我search了geom_text手册来查找一些信息,但无法使其工作。 build议?

用ggplot()改变线条的颜色

我不使用ggplot2那么多,但是今天我想我会在一些图表上使用它。 但我不知道如何手动控制geom_line()颜色 我确定我忽略了一些简单的东西,但是这是我的testing代码: x <- c(1:20, 1:20) variable <- c(rep("y1", 20), rep("y2", 20) ) value <- c(rnorm(20), rnorm(20,.5) ) df <- data.frame(x, variable, value ) d <- ggplot(df, aes(x=x, y=value, group=variable, colour=variable ) ) + geom_line(size=2) d 这给了我预期的输出: 我以为我所要做的就是这样简单的事情: d + scale_fill_manual(values=c("#CC6666", "#9999CC")) 但是这并没有改变。 我错过了什么?