Go to home
Go to monocentrics Vignette
Go to holocentrics Vignette
Go to groups Vignette
1 Karyotype of 400 bands
Organize chr. in rows using column OTU. (Adler, 1994)
chrName | group | shortArmSize | longArmSize |
---|---|---|---|
1 | A | 5.600 | 5.890 |
2 | A | 4.245 | 6.715 |
3 | A | 4.220 | 4.720 |
4 | B | 2.240 | 6.165 |
5 | B | 2.110 | 5.920 |
6 | C | 2.880 | 4.835 |
FstRow<-length(which(humChr$group %in% c("A","B") ) ) # groups in 1st row
SndRow<-length(which(humChr$group %in% "C" ) ) # groups in second row
TrdRow<-length(which(humChr$group %in% c("D","E") ) ) # groups in third row
FrtRow<-length(which(humChr$group %in% c("F","G","sex") ) ) # groups in forth row
OTUdf<-data.frame(OTU=c(rep("otu1",FstRow),
rep("otu2",SndRow),
rep("otu3",TrdRow),
rep("otu4",FrtRow)
), stringsAsFactors=FALSE # c
) # df
OTUdf$chrName<-humChr$chrName
humChr$OTU<-OTUdf$OTU
Add OTU info. to data.frame of marks’ position
markName | markColor | style | |
---|---|---|---|
2 | chr1p36.3 | white | square |
3 | chr1p36.2 | black | square |
4 | chr1p36.1 | white | square |
5 | chr1p35 | black | square |
6 | chr1p34.3 | white | square |
7 | chr1p34.2 | black | square |
This is the data.frame of mark characteristics
markName | markColor | style | |
---|---|---|---|
2 | chr1p36.3 | white | square |
3 | chr1p36.2 | black | square |
4 | chr1p36.1 | white | square |
5 | chr1p35 | black | square |
6 | chr1p34.3 | white | square |
7 | chr1p34.2 | black | square |
2 Plot
plotIdiograms(humChr, # data.frame of chromosome size (in package)
humMarkPos, # df of mark positions (in package)
dfMarkColor = humMarkColor, # df of mark characteristics (in package)
addOTUName = FALSE, # do not add name of OTU
karSpacing = 1.7, # vertical spacing among OTU
reduDistKarTol = 7, # reduce distance among OTUs
karIndex = FALSE, # do not add karyotype indices
chrColor = "black", # chr. color
chrWidth = 1, # chromosome width
chrSpacing = 2, # space among chromosomes
chrIndex = FALSE, # add chromosome indices
morpho = FALSE, # add morphological categories
dotRoundCorr = .5, # correcting factor for dots
centromereSize = 0, # apparent centromere size
roundness = 7, # roundness of chr. and marks
markLabelSize = .5, # size of legend font
pattern= "chr[0-9XY]+", # REGEX pattern to remove from name of marks
indexIdTextSize = 2, # font size of chr name and indices
lwd.chr=.5, # width of chr and mark borders
rulerNumberSize = .9, # font size of ruler
rulerNumberPos = 2, # position of ruler
xlimRightMod = 0, # space to the right of karyotype
ylimBotMod = -.6) # modify ylim of bottom
3 Robertsonian Translocations
This procedure transforms the data of long arms of the chromosomes 13 and 21 from data.frames of chr. and marks in a derivative (Robertson, 1916).
# extract 13 data
humChr13<-humChr[which(humChr$chrName %in% 13),]
humMarkPos13<-humMarkPos[which(humMarkPos$chrName %in% 13),]
# extract 21 data
humChr21<-humChr[which(humChr$chrName %in% 21),]
humMarkPos21<-humMarkPos[which(humMarkPos$chrName %in% 21),]
# Making derivative data.frame of Marks
# remove p arm from 21
humMarkPos21Der<-humMarkPos21[humMarkPos21$markArm=="q",]
humMarkPos21Der$markArm<-"p"
# remove p arm from 13
humMarkPos13Der<-humMarkPos13[humMarkPos13$markArm=="q",]
# rename fragments
humMarkPos21Der$chrName<-"t(13;21)"
humMarkPos13Der$chrName<-"t(13;21)"
# merge fragments of Marks
humMarkPosDer<-rbind(humMarkPos21Der,humMarkPos13Der)
# Making derivative data.frame of chr. size
humChrDer<-humChr13
humChrDer$shortArmSize<-humChr21$longArmSize
humChrDer$chrName<-"t(13;21)"
# Make data.frame of chr. to plot
humChr1321der<-rbind(humChr13, humChrDer , humChr21)
humChr1321der<-humChr1321der[,c("chrName","shortArmSize","longArmSize"),]
# marks for them, together:
humMarkPos1321Der<-rbind(humMarkPos13, humMarkPos21, humMarkPosDer)
humMarkPos1321Der$OTU<-NULL
plot of t(13;21)
plotIdiograms(humChr1321der, # data.frame of size of chr.
humMarkPos1321Der, # df of position of marks
dfMarkColor = humMarkColor, # df of style of marks
addOTUName = FALSE, # do not add OTU name
centromereSize=0, # apparent size of centromere
roundness=9, # roundness of vertices of chr. and marks
chrColor = "black", # chr. color
chrWidth = 1, # width of chr.
chrSpacing = 1, # space among chr.
karSpacing = 2, # karyotype height including spacing
chrIndex = FALSE, # do not add chr. indices
karIndex = FALSE, # do not add karyotype indices
morpho = FALSE, # do not add chr. morphology
indexIdTextSize = 1.5, # font size of chr name
markLabelSize = .5, # font size of chr. mark labels
pattern="chr[0-9]+", # REGEX pattern to remove from mark names
lwd.chr=.9, # width of chr and mark borders
rulerNumberSize = .9, # ruler font size
rulerNumberPos = 2, # ruler number position
ruler.tck = -.03, # tick of ruler, orientation and size
xlimRightMod=2, # modify xlim right argument
ylimBotMod = -.15) # modify ylim bottom argument
4 Function
robert
That can be included in a function. We can do any Robertsonian translocation using:
chrt13q14q<-robert(humChr,humMarkPos,13,14,"q","q")
# which produces a list of two data.frames:
dfChrSizeDer<-chrt13q14q$dfChrSizeDer
dfMarkPosDer<-chrt13q14q$dfMarkPosDer
head(dfMarkPosDer)
chrName | markName | markArm | markDistCen | markSize | OTU | |
---|---|---|---|---|---|---|
613 | t(13;14)(q10:q10) | chr14q11.1 | p | 0.000 | 0.125 | otu3 |
713 | t(13;14)(q10:q10) | chr14q11.2 | p | 0.125 | 0.330 | otu3 |
813 | t(13;14)(q10:q10) | chr14q12 | p | 0.455 | 0.335 | otu3 |
913 | t(13;14)(q10:q10) | chr14q13 | p | 0.790 | 0.305 | otu3 |
1013 | t(13;14)(q10:q10) | chr14q21 | p | 1.095 | 0.600 | otu3 |
1113 | t(13;14)(q10:q10) | chr14q22 | p | 1.695 | 0.330 | otu3 |
plot of t(13;14)
par(mar=c(0,2,.5,0))
plotIdiograms(dfChrSizeDer, # data.frame of chromosome size (in package)
dfMarkPosDer, # df of mark positions (in package)
dfMarkColor = humMarkColor, # df of mark characteristics (in package)
addOTUName = FALSE, # do not add name of OTU
karSpacing = 1.2, # vertical spacing among OTU
karIndex = FALSE, # do not add karyotype indices
chrColor = "black", # chr. color
chrWidth = .6, # chromosome width
chrSpacing = 2, # space among chromosomes
chrIndex = FALSE, # do not add chromosome indices
morpho = FALSE, # do not add morphological categories
dotRoundCorr = .5, # correcting factor for dots
centromereSize = 0, # apparent centromere size
roundness = 7, # roundness of chr. and marks
markLabelSize = .5, # size of legend font
pattern= "chr[0-9XY]+", # REGEX pattern to remove from name of marks
distTextChr = 1,
indexIdTextSize = 2, # font size of chr name and indices
lwd.chr=.5, # width of chr and mark borders
rulerNumberSize = .9, # font size of ruler
rulerNumberPos = 1, # position of ruler
xlimLeftMod = 4, # space to the right of karyotype
xlimRightMod = 5, # space to the right of karyotype
ylimBotMod = .7, # modify ylim of bottom
ylimTopMod =.1
)
References
Adler D. 1994. Idiogram album. http://www.pathology.washington.edu/research/cytopages/idiograms/human/
Robertson WRB. 1916. Chromosome studies. I. Taxonomic relationships shown in the chromosomes of tettigidae and acrididae: V-shaped chromosomes and their significance in acrididae, locustidae, and gryllidae: Chromosomes and variation Journal of MorphologyWiley Online Library, 27(2): 179–331. https://onlinelibrary.wiley.com/doi/abs/10.1002/jmor.1050270202