Skip to content

Instantly share code, notes, and snippets.

@pedroj
Created February 20, 2012 23:34
Show Gist options
  • Save pedroj/1872301 to your computer and use it in GitHub Desktop.
Save pedroj/1872301 to your computer and use it in GitHub Desktop.
Code for plotting the networks. Library bipartite.
##############################################################################
# Code for plotting the networks. Library bipartite.
# Pedro Jordano. 2 Mar 2007. Rev 4 Apr 2008
#-----------------------------------------------------------------------------
# Initializing the datasets
# Enter the adjacency matrix directly
myweb1<- read.delim("myweb.txt", row.names=1,,header=F,sep="\t")
plotweb(nch1, method="cca", text.rot="90", labsize=0.8, col.low="green",
col.high="yellow", col.interaction="blue")
# For matrix initialization, first read the matrices without label columns and
# without header. Then add labels with pp<-list(c(),c()) and
# dimnames(nchqmat)<-pp.
#
### NAVA CORREHUELAS
nchq<-as.matrix(read.table("tmp1.txt",header=F,sep="\t",dec=",",
na.strings="NA"))
pp1<-list(c("Turdus.viscivorus","Phoenicurus.ochruros","Turdus.merula",
"Fringilla.coelebs","Turdus.torquatus","Parus.ater","Turdus.iliacus",
"Erithacus.rubecula","Sylvia.atricapilla","Garrulus.glandarius",
"Sylvia.communis","Parus.major","Turdus.pilaris","Phoenicurus.phoenicurus",
"Coccothraustes.coccothraustes","Parus.cristatus","Sitta.europaea",
"Parus.caeruleus","Columba.palumbus","Sylvia.cantillans","Sylvia.melanocephala",
"Corvus.corone","Serinus.serinus","Pica.pica","Dendrocopos.major",
"Turdus.philomelos","Loxia.curvirostra","Sylvia.borin","Serinus.citinella",
"Sylvia.conspicillata","Corvus.corax","Ficedula.hypoleuca","Emberiza.cia"),
c("Prunus.mahaleb","Crataegus.monogyna","Berberis.vulgaris",
"Juniperus.phoenicea","Taxus.baccata","Hedera.helix","Rosa.canina",
"Lonicera.arborea","Juniperus.sabina","Juniperus.communis","Rhamnus.saxatilis",
"Rhamnus.myrtifolius","Daphne.laureola","Sorbus.aria","Rubus.ulmifolius",
"Amelanchier.ovalis","Arum.italicum","Rubia.peregrina","Prunus.prostrata",
"Cotoneaster.granatensis","Juniperus.oxycedrus","Polygonatum.odoratum",
"Paeonia.officinalis","Lonicera.etrusca","Lonicera.splendida"))
dimnames(nchq)<-pp1
nch01<-as.matrix(read.table("NCH_01_b_unnamed.txt",header=F,sep="\t",dec=",",
na.strings="NA"))
pp<-list(c("Turdus merula","Turdus viscivorus","Erithacus rubecula",
"Turdus iliacus","Turdus torquatus","Phoenicurus ochruros","Sylvia atricapilla",
"Parus ater","Fringilla coelebs","Columba palumbus","Corvus corone",
"Parus major","Coccothraustes coccothraustes","Turdus pilaris",
"Phoenicurus phoenicurus","Sylvia communis","Turdus philomelos",
"Garrulus glandarius","Sitta europaea","Parus caeruleus","Ficedula hypoleuca",
"Pica pica","Sylvia conspicillata","Emberiza cia","Parus cristatus",
"Loxia curvirostra","Corvus corax","Dendrocopos major","Sylvia borin",
"Sylvia cantillans","Sylvia melanocephala","Serinus citinella",
"Serinus serinus"),c("Prunus mahaleb","Crataegus monogyna","Berberis vulgaris",
"Juniperus phoenicea","Lonicera arborea","Rubus ulmifolius","Rosa canina",
"Taxus baccata","Hedera helix","Juniperus communis","Juniperus sabina",
"Sorbus aria","Daphne laureola","Amelanchier ovalis","Rhamnus myrtifolius",
"Rhamnus saxatilis","Rubia peregrina","Arum italicum","Cotoneaster granatensis",
"Lonicera splendida","Prunus prostrata","Juniperus oxycedrus",
"Lonicera etrusca","Paeonia officinalis","Polygonatum odoratum"))
dimnames(nch01)<-pp
### HATO RATON
hr01<-as.matrix(read.table("HR_01_b_unnamed.txt",header=F,sep="\t",
dec=",",na.strings="NA"))
pp2<-list(c("Cyanopica_cyanus","Turdus_philomelos","Turdus_merula",
"Ficedula_hypoleuca","Muscicapa_striata","Luscinia_megarhynchos",
"Phoenicurus_phoenicurus","Saxicola_torquata","Erithacus_rubecula",
"Sturnus_unicolor","Sylvia_undata","Sylvia_cantillans","Sylvia_melanocephala",
"Sylvia_communis","Sylvia_hortensis","Sylvia_borin","Sylvia_atricapilla",
"Fringilla_coelebs"),c("Tamus_communis","Smilax_aspera",
"Asparagus_acutifolius","Asparagus_aphyllus","Lonicera_periclymenum",
"Rubia_pregrina","Phillyrea_angustifolia","Olea_europaea","Osyris_alba",
"Myrtus_communis","Daphne_gnidium","Pistacia_lentiscus","Rhamnus_lycioides",
"Rubus_ulmifolius","Crataegus_monogyna","Pyrus_bourgaeana"))
dimnames(hr01)<-pp2
hrq<-as.matrix(read.table("tmp2.txt",header=F,sep="\t",
dec=",",na.strings="NA"))
pp3<-list(c("Sylvia atricapilla","Sylvia borin","Erithacus rubecula",
"Turdus merula","Sylvia melanocephala","Sturnus unicolor",
"Ficedula hypoleuca","Turdus philomelos","Sylvia cantillans",
"Sylvia communis","Cyanopica cyanus","Sylvia undata","Sylvia hortensis",
"Muscicapa striata","Phoenicurus phoenicurus","Saxicola torquata",
"Luscinia megarhynchos"),c("Pistacia lentiscus","Olea europaea",
"Phillyrea angustifolia","Rhamnus lycioides","Daphne gnidium",
"Myrtus communis","Rubia pregrina","Rubus ulmifolius","Smilax aspera",
"Asparagus aculeatus","Tamus communis","Pyrus bourgaeana",
"Lonicera periclymenum","Osyris alba","Crataegus monogyna",
"Asparagus aphyllus"))
dimnames(hrq)<-pp3
#-----------------------------------------------------------------------------
#Coerce to network form
g<-as.network.matrix(m,matrix.type="adjacency")
hr01<-as.network.matrix(as.matrix(read.table("HR_01_b_unnamed.txt",header=F,
sep="\t",dec=",",na.strings="NA"),
matrix.type="adjacency",bipartite=18))
nch01web<-as.network.matrix(nch01,matrix.type="adjacency",bipartite=33)
#-----------------------------------------------------------------------------
# Plotting, etc.
#-----------------------------------------------------------------------------
par(mfrow=c(2,1))
plotweb(t(nchq),method="normal", # To plot the web with Animals as
# higher trophic level
col.prey="red",col.pred="green",
col.interaction="grey80")
plotweb(t(hrq),method="normal", # To plot the web with Animals as
# higher trophic level
col.prey="red",col.pred="green",
col.interaction="grey80")
# Nestedness quantitative
nestedness.corso(t(nchq),weighted=T,reps=1000)
nestedness.corso(t(hrq),weighted=T,reps=1000)
plotweb(hr01)
par(mfrow=c(2,1))
visweb(nchq, type="nested", text="interaction",plotsize=40,textsize=0.8)
visweb(nchq, type="diagonal", text="interaction",plotsize=35,textsize=0.8)
visweb(hrq, type="nested", text="interaction",plotsize=35,textsize=0.8)
networklevel(hrq)
compart(nchqmat)
degreedistr(nchqmat)
nestedness(nch01mat)
#-----------------------------------------------------------------------------
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment