使用新的细胞计数数据可视化ggCyto包裹。

ggCyto套餐是在rglab开发的迈克江。它是新的,正在积极发展。
在这里,我们的目标是展示其一些功能。

通过重载GGPLOT.巩固方法,我们制作细胞计数数据与之完全兼容GGPLOT.

子集数据

它通常没有意义于可视化100或FCS样本,因此我们将借助于可视化的数据,将自己限制为前两个科目。我们可以用子集在gatingset对象上为子集pdata.变量。这是漂亮的标准生物体的行为。

#子集数据用于可视化的演示。ptids < -独特pdata.(tbdata)[[“PID”]])[12] tbdata < -子集(TBDATA,`PID`%在%ptids)R M“CD4”tbdata)

此外,我们将重点关注CD3+细胞亚群。这些被提取成势力

#提取CD3种群FS < -getdata.(TBDATA,“CD3”

ggcyto +势力

1维图 - 直方图。

可视化FCM数据最简单的方法是通过一维直方图或密度图。这是标准所支持的ggplot2.geom_xxxx界面。

在这里,我们指定我们想要直方图,我们映射审美X对该变量CD4,它对应于我们想要绘制的维度/标记。

ggCyto自动刻面名称变量,它通常表示单个FCS文件。

P < -ggcyto(fs,AES.X =CD4))p1 < -P +geom_histograph箱=60.)P1

更改限制以反映仪器范围。

ggCyto将向您展示全系列的数据,通常超过仪器范围。我们可以使用仪器范围限制仪器范围的范围ggcyto_par_set.

有效值是数据乐器

myPars < -ggcyto_par_set.限制=“工具”)p1 +myPars

查看默认参数设置

我们可以使用ggcyto_par_default

#打印默认设置ggcyto_par_default()
## $limits ## [1] "data" ## ## $facet ## facet_wrap(name) ## ## $hex_fill ## continuous_scale(aesthetics = "fill", scale_name = "gradientn", ## palette = gradient_n_pal(colours, values, space), na。值= na。价值,# # trans =“√”,指导=指南)# # # #实验室# #标签# #美元[1]”“# # # # attr(,“类”)# #[1]“labs_cyto”# # # # attr(,“类”)# #[1]“ggcyto_par”

密度图 - 1D

当然,也支持其他的几何图形。geom_dity将生成一个密度图而不是直方图。

P =P +geom_dity()+geom_dity填充=“黑色的”) +mypars p.

还支持各方面。

如您所见,默认的面形是使用名称多变的。但是,任何可变的变量pdata.槽段势力已验证。

Kable.pdata.(FS))
stim PID 实验名称 名称 known_response.
353385.fcs. DMSO 一般的 01-0917 130517 _tb-ics_acs_gp 353385.fcs. 的人
353387. fcs eSat-6. 一般的 01-0917 130517 _tb-ics_acs_gp 353387. fcs 的人
353421.fcs. DMSO 一般的 01-0996. 130517 _tb-ics_acs_gp 353421.fcs. 响应者
353423. fcs eSat-6. 一般的 01-0996. 130517 _tb-ics_acs_gp 353423. fcs 响应者

我们在这里方面刺激和known_response.(来自以前的分析)。

#更改facet(默认是facet_wrap(~name))P +facet_grid(众所周知〜肽)

二维点阴谋

FCM数据的典型视图使用二维点图。六角形啤酒是一个流行的快速,是查看数据。

同样,需要指定轴限制,因为默认情况下ggcyto将显示所有数据,包括具有异常大的正或负值的异常值。

#2D六己P < -ggcyto(fs,AES.X =CD4,y =CD8))+geom_hex箱=60.) +ylim.C( -One hundred.4 e3))+XLIM.C( -One hundred.3 e3))p

改变颜色比例

可以使用默认的颜色比例使用scale_fill_gradient.

例如,使用彩色啤酒树使用piyg.缩放,具有符合的平方根转换。

P +scale_fill_gradientn颜色=brewer.paln =8.名称=“PiYG”),Trans =“sqrt”

或灰度。

P +scale_fill_gradient.Trans =.“sqrt”低=“灰色的”高=“黑色的”

轮廓

geom_denys2d.行为正常。

ggcyto(fs,AES.X =CD4,y =CD8)) +geom_hex箱=60.)+geom_denys2d.颜色=“黑色的”)+ylim.C( -One hundred.4 e3))+XLIM.C( -One hundred.3 e3)))

绘制Flowset对象的栅极

在数据之上绘制门是可能的。

一种方法是把门从Gatingset.并明确添加它。

#添加geom_gate图层P < -ggcyto(fs,AES.X =CD4,y =CD8))+geom_hex箱=60.) +ylim.C( -One hundred.4 e3))+XLIM.C( -One hundred.3 e3))g < -GetGate.(TBDATA,“CD4 +”)p < -P +geom_gate(g)p

覆盖小区群体的统计数据。

#添加geom_stats.P +geom_stats.()

使用gatingset而不是flowset

GGCYTO + GATINGSET.

如前所述,但我们可以使用Gatingset对象而不是势力。同样,尺寸使用标记名称映射到美学。

#use自定义范围覆盖默认数据限制myPars < -ggcyto_par_set.限制=列表y =C( -One hundred.4 e3),X =C( -One hundred.3 e3)))p < -ggcyto(TBDATA,AES.X =CD4,y =CD8),子集=“CD3”)p < -P +geom_hex箱=64.) +mypars p.

如果我们想在轴上使用标记名称而不是频道和标记名称,这是可能的。

#只在轴上显示标记P < -P +labs_cyto“标记”)p

为GatingSet对象绘制门

在绘制门时,我们不需要显式地提取它们,因为它们是对象的一部分。

一个门。

#添加门P +geom_gate“CD4 + CD8-”

两个门。

#添加两个门P < -P +geom_gateC“CD4 + CD8-”“CD4-CD8-”))p

覆盖人​​口统计。

P +geom_stats.()

只覆盖一个人口统计数据。

#仅适用于一个特定门的统计信息P +geom_stats.“CD4 + CD8-”

更改背景颜色,样式,并报告计数而不是百分比。

#更改统计类型,背景颜色和位置P +geom_stats.“CD4 + CD8-”类型=“数数”大小=6.颜色=“白色的”填充=“黑色的”调整=0.3

正如您所看到的,使用了很多灵活性ggplot2.与FCM图交互的界面。

典型用法

假设你想绘制CD4和CD8细胞群体,但不一定知道父母人口。

要用GGCYTO做到这一点看起来像:

#'dubset'是omomitedP < -ggcyto(TBDATA,AES.X =CD4,y =CD8))+geom_hex箱=64.) +myPars +geom_gateC“CD4 + CD8-”“CD4-CD8-”))p

我们定义尺寸和门。无需指定父群。GGCYTO将借助父母群体并绘制相关事件。

或者,我们知道父母,但不知道孩子群体。

子集参数允许我们明确地子集父群。什么时候子集指定了,ggCyto情节所有儿童人口。

R M“CD8 +”tbdata)R M“CD4 +”tbdata) p < - - - - - -ggcyto(TBDATA,AES.X =CD4,y =CD8),子集=“CD3”) +geom_hex箱=64.) +geom_gate()+geom_stats.()+mypars p.

数据转换

默认,ggCyto绘制转换空间中的数据(如果它已被转换)。对于由FlowJo处理的FCM数据,这在[0,4096]中,或所谓的频道空间

因为我们存储数据转换,我们可以使用轴上转换轴并显示x和y轴上的原始荧光强度axis_x_inverse_trans.axis_y_inverse_trans.

逆变换轴

P +axis_x_inverse_trans.()+axis_y_inverse_trans.()

ggcyto目的

我们已经定义了一个ggcyto对象,该对象将数据转换延迟到绘制数据为止。这使得事情变得更快一些,因为在需要之前,我们不需要对底层数据进行任何融化或重塑。

ggcyto对象完全是ggplot2.在添加图层和参数方面兼容。

班级(p)
## [1]“ggcyto_gatingset”“ggcyto_flowset”“ggcyto”## [4]“gg”“ggplot”
班级(P $数据)
## [1]“gatingset”## attr(,包装“)## [1]”flowWorkspace“

您可以使用作为返回A.GGPLOT.对象。

#返回一个普通的ggplot对象p <- as.ggplot(p) class(p) class(p$data) #现在加强了

有关使用的更多信息GGPLOT.直接在势力对象:

报告错误

请在GitHub页面上打开问题和文件错误报告或意外行为。http://github.com/rglab/ggco.