标签: lattice

拆分上下部分的图,进行3阶段条形图绘制

我需要针对3个因素绘制地上和地下生物量.对于每个生物量,我能够使用来自格子的条形图绘制它,但是,我不知道绘制其中的两个,即正面的地上生物量,以及Y轴的地理部分的地下生物量.这是我的数据的测试代码,其中A,B,C是全因子因子:

library(lattice)
above <- runif(108)
below <- runif(108)
A <- rep(c("ab", "bc", "cd"), each=36)
B <- rep(1:3, 36)
C <- gl(3, 4, 108, c(30, 60, 90))

barchart(above~A|B+C)
barchart(below~A|B+C)

#This is what I used to do for two factors using barplot
par(mfrow=c(2, 1), mai=c(0, 1, 0.5, 0.5))
agg.abv <- aggregate(above, by=list(A, B), mean)
abv <- matrix(agg.abv[, 3], ncol=nlevels(A), dimnames=list(levels(A), levels(B)))
agg.bel <- aggregate(below, by=list(A, B), mean)
bel <- matrix(agg.bel[, 3], ncol=nlevels(A), dimnames=list(levels(A), levels(B)))
barplot(abv, beside=T, ylim=c(0, 1))
barplot(abv, beside=T, ylim=c(1, 0)) …
Run Code Online (Sandbox Code Playgroud)

plot r bar-chart lattice

3
推荐指数
1
解决办法
392
查看次数

格子图在函数内部不起作用

我有这个R代码,它可以很好地工作,如果我在R控制台中运行它或者作为一个RScript,我会获得带有该图的位图

library(DBI);
library(RMySQL);
library(brew);
library(lattice);
con <- dbConnect(MySQL(),server credentials)
x <- dbGetQuery(con,"SELECT name, distance FROM distances")
bitmap("/tmp/dist_6078.bmp")
dotplot(x$distance~x$name, col='red', xlab='name', ylab='distance', main='Distance plot')
dev.off()
Run Code Online (Sandbox Code Playgroud)

问题是,如果我将所有内容都包含在<%和%>之间并使用brew库,我会得到一张空白图片.如果我使用基本的R图,一切正常,只有当我使用格子时问题.

printing r lattice

3
推荐指数
1
解决办法
1792
查看次数

带有Lattice&panel.bpplot的垂直盒百分位图

我绘图中的R箱百分图,使用该盒百分面板功能从Hmisc(panel.bpplot)用bwplot来自lattice.

我有一个数字向量(Length),并希望在因子变量(Month)的级别上显示它的分布.

这是假数据的一个例子:

例如,

set.seed(13)
Length<-sample(1:10, 1000, replace=TRUE)
Month<-sample(c("Apr","May","Jul","Aug","Sep","Nov"), 1000, replace=TRUE)

df<-cbind(Month, Length)
df<-as.data.frame(df)   
df$Month<-factor(df$Month, levels=c("Apr","May","Jul","Aug","Sep","Nov"))
df$Length<-as.numeric(df$Length)

#plot horizontal box-percentile plot; 
bwplot(Month~Length, data=df, panel=panel.bpplot)
Run Code Online (Sandbox Code Playgroud)

这很好用.但我希望这些图是垂直的,Month在x轴和Lengthy轴上.panel.bpplot说水平图的文档使类别级别更加明显,但是,就我的目的而言,我特别需要一个垂直图.有没有办法修改panel.bpplot来做到这一点?

r panel lattice

3
推荐指数
1
解决办法
1200
查看次数

如何根据另一个因素制作一个因子的条形图?

给定如下数据框,有2个或更多因素:

 data <- data.frame(V1=sample(c('A','B','C'), 50, T), V2=sample(c('X','Y'),50,T))
Run Code Online (Sandbox Code Playgroud)

我可以独立制作一个因子列表的条形图,例如:

library(lattice)
with(data, barchart(V1))
Run Code Online (Sandbox Code Playgroud)

如何根据第二个因子的值制作多面板图?我期望使用的语法是:

with(data, barchart(V1 | V2))
Run Code Online (Sandbox Code Playgroud)

但这会产生以下警告:

Warning message:
In Ops.factor(V1, V2) : | not meaningful for factors
Run Code Online (Sandbox Code Playgroud)

并没有有意义的输出.

r lattice

3
推荐指数
1
解决办法
182
查看次数

在r处的边缘处具有热图条带的XY散点图

这里有数据和假设:

set.seed(1234)
myd <- data.frame (X = rnorm (100), Y = rnorm (100, 10, 3))
Run Code Online (Sandbox Code Playgroud)

只是对X和Y进行控制,有时这可能是与X和Y不同的变量,而且是类别本身

myd$xcat <- cut (myd$X, 10)
myd$ycat <- cut (myd$Y, 10)
Run Code Online (Sandbox Code Playgroud)

我想制作如下的好情节,其中餐馆正在绘制热图图形条 在此输入图像描述

require(ggplot2)
ggplot(myd, aes(x=X, y=Y)) +    geom_point(shape=1)  + theme_bw()
Run Code Online (Sandbox Code Playgroud)

这可能是ggplot2或其他软件包还是需要专门的解决方案?

r graph ggplot2 lattice r-grid

3
推荐指数
1
解决办法
658
查看次数

R格条形图:指定图例的颜色?

我的数据如下:

service,rating_1,rating_2,rating_3,rating_4,rating_5
renew_patent,0,0,1,2,11
apply_benefit,21,20,121,828,1744
apply_employment_tribunal,0,0,0,0,0
Run Code Online (Sandbox Code Playgroud)

我希望R为每行打印一个直方图,列为直方图的条形.

到目前为止我有这个:

require(lattice)
data <- read.csv("test.csv", header = TRUE)
colors = c('red', 'orange', 'yellow', 'blue', 'green')
barchart(rating_1+rating_2+rating_3+rating_4+rating_5 ~ service, data=data, 
  auto.key=list(space='right'), scales=list(x=list(rot=45)), 
  ylab="Percentage of total", col=colors)
Run Code Online (Sandbox Code Playgroud)

它正在工作,但它只是改变了条形的颜色,而不是图例的颜色.

如何指定图例的颜色以及条形图?

r lattice

3
推荐指数
1
解决办法
2985
查看次数

如何删除R包"rasterVis"中"levelplot"中的框架

我想删除栅格数据集的"levelplot"图中的框架.不知道怎么做.

library(raster)
library(rasterVis)

f <- system.file("external/test.grd", package="raster")
r <- raster(f)
s <- stack(r, r+500, r-500)
levelplot(s, contour=TRUE)
levelplot(s)
levelplot(s,box=FALSE,axes=FALSE) # It doesn't work.
Run Code Online (Sandbox Code Playgroud)

r raster figure lattice rastervis

3
推荐指数
1
解决办法
2268
查看次数

R中的分段图中的不同间隔颜色

我需要创建一个具有三个段颜色的segplot:一个用于间隔低于1,一个用于间隔优于1,另一个用于包含1的间隔.

df <- read.table(header=T, text='
             geno       n   rd  lower upper
             A7002      7 1.12   0.94  1.30
             ANTA82RR  12 1.00   0.91  1.09
             BR05-83097 5 0.84   0.41  1.27
             BR05-86275 5 0.64   0.25  0.93
             BRM04-1660 7 1.26   1.02  1.50
             BRN03-1404 5 1.03   0.88  1.18
             BRN05-0656 5 0.57   0.47  0.67
             ')

library(latticeExtra)

segplot(reorder(factor(geno), rd)  ~ lower + upper,
    data = df, 
    xlim=c(-1, 2.5),
    draw.bands = FALSE, centers = rd,
    panel = function (x,y,z,...){
    panel.segplot(x,y,z,...)
    panel.abline(v=1,lty=3)
    }
 ) 
Run Code Online (Sandbox Code Playgroud)

提前致谢.

r lattice

3
推荐指数
1
解决办法
337
查看次数

格子图-通过y值的平均值添加线

我想打印lattice::xyplot包含分组的点和线的,但是y对于x每个组中的许多单个值,我都有多个值。我希望打印一条分段的线,以便对于每个x值,它都通过y每个组中相关值的平均值。

这是一个例子:

使用此数据:

set.seed(1)
d <- data.frame(x=sample(6, 20, replace=TRUE), y=rnorm(20), g=factor(sample(2, 20, replace=TRUE)))
# Shift one group
d$y[d$g==2] = d$y[d$g==2] + 5
Run Code Online (Sandbox Code Playgroud)

我转移了一组,所以线条在视觉上更具吸引力。

散点图如下所示:

xyplot(y ~ x, data=d, groups=g)
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

仅仅添加行真是一团糟:

xyplot(y ~ x, data=d, groups=g, type=c('p','l'))
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

如果对x值进行排序会更好一些,但仍然不是我想要的:

xyplot(y ~ x, data=d[order(d$x),], groups=g, type=c('p','l'))
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

r lattice

3
推荐指数
1
解决办法
812
查看次数

如何用R复制这个情节?

我需要以与图1所示相同的格式制作几个时间序列图.我对格式本身感兴趣.

我将非常感谢你的帮助.

在此输入图像描述

这是一个模拟数据的最小例子

    set.seed(1234)
    nobs<-50
    x<-rnorm(nobs,0,10)
    t<-seq(1,nobs)
    data<-ts(20+x+t, freq=4, start=c(2004,1))
    par(family="serif")
    plot(data, lwd=2, col="blue4", ylab="Millions")
    title(main="Gráfico 1. Evolución del ...")
    legend(2010,10,"GDP", col="blue4",lwd=2)
    abline(lm(data~t), lwd=2, col="red") # This does not work 
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

r ggplot2 lattice

3
推荐指数
1
解决办法
347
查看次数

标签 统计

lattice ×10

r ×10

ggplot2 ×2

bar-chart ×1

figure ×1

graph ×1

panel ×1

plot ×1

printing ×1

r-grid ×1

raster ×1

rastervis ×1