1
2
3
4
5
6
7
8
9
10
11
APPENDIX 1: Data collection, identification and quantification methods (from Eklöf et al.,
2013 SI, p31).
Pollen grains were collected from the undersides of the trapped pollinator species, and
observed under 100x power. The number of pollen grains on seven equally spaced straightline transects across the square coverslip (22 x 22mm) was recorded. When pollen grains
were encountered, we used high power magnification (400 X) to ensure appropriate
identification. We summed the pollen grain counts from all seven transects as an estimate
of pollen carried per individual (Kearns & Inouye 1993). This technique measures pollen on
the underside of insects and does not include pollen contained within corbiculae which may
contribute to total pollen load but are unlikely to be involved in pollination events (Thorp,
2000).
12
13
14
Table S1: Pollinator species list
Order
Family
Species
Hymenoptera
Apidae
Apis mellifera (Linnaeus, 1758)
Bombus terrestris (Linnaeus, 1758)
Netelia producta (Brullé, 1846)
Lasioglossum sordidum (Smith, 1853)
Ichneumon promissorius (Erichson, 1842)
Halictidae
Ichneumonidae
Diptera
Anthomyiidae
Calliphoridae
Stratiomyidae
Syrphidae
Sarcophagidae
Tachinidae
Staphylinidae
Delia platura (Meigen, 1826)
Calliphora stygia (Fabricius, 1794)
Calliphora vicina (Robineau-Desvoidy, 1830)
Pollenia pseudorudis (Rognes, 1985)
Odontomyia atrovirens (Bigot, 1879)
Eristalis tenax (Linnaeus, 1758)
Melangyna novae-zelandiae (Macquart, 1855)
Helophilus hochstetteri (Nowicki, 1875)
Oxysarcodexia varia (Walker, 1836)
Pales marginata (Hutton, 1901)
Thyreocephalus orthodoxus (Olliff, 1887)
15
16
17
1
18
Table S2: Plant species list
Family
Species
Apicaeae
Asparagaceae
Asteraceae
Daucus carota L.
Cordyline sp.
Cirsium vulgare (Savi) Ten.
Taraxacum officinale Weber
Alnus glutinosa Gaertn.
Alnus serrulata (Aiton) Willd.
Raphanus sp.
Chenopodium album L.
Trifolium sp.
Acea sp.
Sp. (other)
Eucalyptus globulus
Eucalyptus nitens H.Deane & Maiden
Lolium sp.
Rubus fruticosus
Betulaceae
Brassicaceae
Chenopodiaceae
Fabaceae
Malvaceae
Myrtaceae
Poaceae
Rosaceae
19
20
2
21
22
23
Table S3: Insect functional traits used in this study and data sources. Data were collected in Field
Based Observation Studies (FBOS) conducted by Rader et al., 2014, or from other Literature (LIT):
Colles & McAlpine 1991; Howlett et al. 2005; Donovan 2007; Michener 2007; Rader et al. 2009.
24
25
# represents number of individuals sampled.
Pollinator traits
(and abbreviations)
Mean
Range
Unit
Data
source
Reference
#
Average body length
(“b.size”)
Average body width between
the base of the wings
(“b.size”)
Pollen carrying structure
(“carrying_structure”)
Mean duration of flower
visitation (“vis_time”)
Foraging preference for
nectar or pollen (“nec.poll”)
Social or solitary (“soc_sol”)
Feeding preference of larvae
(“larval_diet_pref”)
Hour of peak daily activity
based on abundances
(“daily”)
Month of peak seasonal
activity based on abundances
(“season”)
10.5
15.1
mm
FBOS
This study
10
3.3
5.6
mm
FBOS
This study
10
-
-
-
LIT
3-5
-
8.8
14.1
seconds
FBOS
1
30
-
-
%
FBOS
1
20
-
-
-
LIT
LIT
3,4
3,4
-
257.3
5683
Insects
FBOS
This study
-
89.1
3273
Insects
FBOS
This study
26
27
28
3
29
30
Table S4: Plant functional traits used in this study and category description. All traits were measured
for the study of Rader et al., 2014 and provided by R. Rader.
Plant trait
Description
growth_form
1.
2.
3.
4.
1.
2.
3.
1.
2.
grass
herb
shrub
tree
longitivity
annual
biennial
perennial
type_infl (type of
spike, raceme, panicle/cyme/thyrse, umbel/corymb
inflorescence)
captitulum/head
3. catkin
pollnec_acces (ease of acces to 1. open or easy access to nectar and pollen
pollen/nectar)
2. tubular or hidden resources or closed/restrictive
access
single_infl (clustering of
1. solitary flower or small clusters of single flowers
inflorescence)
2. inflorescence
flo_per_infl (number of
1. tens of flowers
flowers per inflorescence)
2. hundreds
3. thousands
fragrance
1. none
2. some
3. yes
nec_per_pol_per_day (amount 1. < 1 μ
of nectar per flower unit per
2. 1-5 μl
day)
3. > 6 μl
flo_symmetry (symmetry of
1. actinomorphic
flower)
2. zygomorphic
infl_symmetry (symmetry of
1. actinomorphic
whole inflorescence)
2. zygomorphic
season
Presence/absence of flowers across the 4 seasons
flo_sex
1. monoecious
2. dioecious
31
32
33
4
34
35
36
37
38
39
40
Figure S1: Accumulation curve of interaction pairs. We calculated the accumulation of interaction
pairs (instead of individual species used in species accumulation curves) by pooling all interaction
pairs from the different sites in the rarefaction calculation. ‘Interaction richness’ on the y-axis thus
corresponds to the number of unique pairs of plant-pollinator partners, and the x axis is the number
of observations of a pair during the sampling process.
41
42
43
44
45
46
47
48
49
As the accumulation curve does not reach saturation, we conclude that the interactions that were
sampled were incomplete. This is a common issue, well known for pollination networks, and can be
due to insufficient sampling effort; however the high number of rare species, common in pollination
networks, also increases the expected richness and hence the recorded interactions appear
undersampled (Chacoff et al. 2012). Furthermore, this issue is corrected for by including network
size throughout our analyses. Importantly, sampling effort is consistent across replicate networks to
allow comparison. Furthermore, our main focus is on comparisons of species roles within, not across
networks, such that equivalence of sampling effort does not affect our main results.
5
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
APPENDIX 2: Additional analyses
1. Analysis for the pollinator community without excluding the outlier.
The abundance of the pollinator Lasioglossum sordidum in the first site gave this interaction a very
high leverage (calculated as in Crawley 2007, p.354), such that we excluded it from the main
analysis. To do so, we set its abundance to 0. However, that species had recorded interactions with
several plant species of that community, which we left unchanged. Therefore, normalized degree
(ND) and specificity (HS) were calculated including the interactions of L. sordidum. We simply
removed the measures of ND and HS for that species in the analysis, such that the degree and
specificity of the other species of the community remained unchanged (see Appendix 2 code).
Figure S2: Leverage of the pollinator species based on their abundances. The dotted line
corresponds to an approximate threshold above which a data point can be considered as a statistical
outlier (Crawley 2007, p.354).
67
6
68
69
70
71
In our main analysis, we removed this outlier, which corresponds to the abundance of Lasioglassum
sordidum in the first site. We nevertheless ran the models including all data points, and present the
results in Table S5. The leverage of the outlier influenced the results of the abundance covariate, but
did not qualitatively change those pertaining to originality.
72
7
73
74
75
Table S5: Results for the models containing all data points. In the case of weighted pollinator
originality predicting HS (b), no model averaging was needed, such that the degrees of freedom (DF)
and t-value are presented instead of the Adjusted Standard Error and z-value presented otherwise.
76
a: Weighted pollinator originality predicting ND
(conditional average)
Estimate
Std. Error
(Intercept)
0.760
0.099
1
pol.abun
<0.001
<0.001
size
-0.006
0.004
w. pol. orig2
-0.381
0.141
abun : w.pol.orig
0.760
0.099
size : w.pol.orig
<0.001
<0.001
b: Weighted pollinator originality predicting HS
Value
Std.Error
(Intercept)
0.408
0.102
pol.abun
0.000
0.000
w.orig
0.314
0.128
pol.abun : w.orig
-0.002
0.001
77
Adjusted SE
z value
Pr(>|z|)
0.100
<0.001
0.004
0.143
0.100
7.581
2.655
1.626
2.670
7.581
< 0.0001
0.008
0.104
0.008
< 0.0001
<0.001
2.655
0.008
**
DF
66.000
66.000
66.000
66.000
t-value
4.018
2.380
2.445
-3.082
p-value
0.000
0.020
0.017
0.003
***
*
*
**
c: Pollinator uniqueness predicting ND
(conditional average)
Estimate
(Intercept)
-0.056
uniq3
0.606
size
-0.001
pol.abun
<0.001
Std. Error
0.162
0.175
0.001
<0.001
Adjusted SE
0.165
0.178
0.001
<0.001
z value
0.337
3.403
1.187
0.497
Pr(>|z|)
0.736
0.001
0.235
0.619
d: Pollinator uniqueness predicting HS
(conditional average)
Estimate
(Intercept)
1.152
uniq
-0.647
size
-0.002
Std. Error
0.235
0.244
0.001
Adjusted SE
0.239
0.248
0.001
z value
4.825
2.612
1.278
Pr(>|z|)
0.000
0.009
0.201
1: pollinator abundance; 2: weighted pollinator originality; 3: pollinator uniqueness
78
79
8
**
**
***
**
80
81
82
83
84
85
86
87
2. Results for the models containing unweighted versions of originality
Table S1: Linear Mixed-effects Model partial coefficient estimates from the averaged best-fitting
models predicting pollinator normalised degree (ND) or specificity (HS) and containing pollinator
originality not weighted by pollinator relative abundances (i.e., the distances to the community
centroid are based on pollinator presence-absence data). Non-significant results are shown only if
they were retained in the model; significant results are shown in bold. ‘pol.abund’ stands for
pollinator abundance, ‘pol.orig’ for pollinator originality. (:) represents an interaction effect.
a: Pollinator unweighted originality predicting ND
(conditional average)
Estimate
Std. Error
(Intercept)
0.3517531
0.2168130
pol.abun
-0.0009139
0.0015150
pol.orig
0.3369720
0.3761163
size
-0.0056374
0.0036848
pol.abun:pol.orig
0.0035279
0.0020789
pol.orig:size
0.0086938
0.0064090
Adjusted SE
0.2197549
0.0015283
0.3812035
0.0038143
0.0021175
0.0065265
z value
1.601
0.598
0.884
1.478
1.666
1.332
Pr(>|z|)
0.1095
0.5499
0.3767
0.1394
0.0957
0.1828
b: Pollinator unweighted originality predicting HS
(conditional average)
Estimate
Std. Error
(Intercept)
1.0349833
0.1503902
pol.abun
-0.0001914
0.0008402
pol.orig
-0.5225217
0.2583113
pol.abun:pol.orig
-0.0016586
0.0021309
size
0.0005421
0.0009303
Adjusted SE
0.1530945
0.0008514
0.2629079
0.0021713
0.0009934
z value
6.760
0.225
1.987
0.764
0.546
Pr(>|z|)
<2e-16 ***
0.8221
0.0469 *
0.4449
0.5853
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
These results show that there were no significant relationships between pollinator normalized
degree and the unweighted calculation of originality; however, unweighted originality was
negatively correlated with pollinator specificity (HS). This indicates that when using only the
presence/absence of pollinators, species with a distinct trait profile from the community average
were less specific in their interactions among their partners (i.e., they pollinated plants more
evenly), which is the opposite finding from the equivalent model using weighted originality (Table
1b).
The choice between weighted and unweighted versions of functional originality is therefore of major
importance, and should be chosen carefully depending on whether a trait-centered (reflected by
weighing by relative abundances) or a species-centered approach is preferred, as they assess
different ecological questions. In the present study, this seems to show that on the surface,
pollinators do not preferentially interact with plants based on their trait profiles. However, in
comparison with the analysis comprising weighted originality, this suggests that certain pollinator
traits and their underlying functions are nonetheless more original (and others more common),
which influences the interaction patterns relative to trait occurrence rather than species identity.
This also illustrates how the pollinator community is functionally more homogenous when
9
105
106
considering traits qualitatively, and this masks the underlying processes defining how species
interact.
107
10
108
109
APPENDIX 3: Determining which traits were most important: jack-knife analysis for
individual traits
110
111
112
113
114
115
116
117
118
119
The traits measured can have an important influence on the outcome of the study, as they
define the nature of the functional diversity of the community. We chose our traits to
measure general features associated with pollination fulfilment. However, in a context
where one would be interested in the relative importance of traits related to several
different functions (for example, if traits pertaining to plant growth on one hand versus
investment in defenses against herbivores on the other had been measured) in determining
the strength of the relationship between species’ functional and network roles, it could be
measured through a jack-knife approach (Gagic et al. 2015), i.e. the successive removal of
one trait at a time from the raw trait data.
120
121
122
123
124
125
126
Negative differences in model fit (∆AICs) between the original model and the ones
calculated after each trait was removed revealed that the corresponding traits improved the
model fit when included in the calculation of pollinator originality or uniqueness, and thus
contributed to its relationship with network role. Conversely, positive ∆AICs indicated that
those traits worsened the model fit, suggesting that they went against the relationships
between functional and network roles detected by the models.
127
128
129
130
131
132
133
134
135
136
137
138
139
Results showed that the jack-knife removal of successive traits produced better or worse
model fits depending on the identity of the trait removed (Fig. S1a). Despite some variation
in the contributions of each trait, depending on which model was jack-knifed, the removal
of body size and daily peak abundance improved the predictive power of the models
pertaining to pollinator’s normalised degree and specificity predicted by their originality or
uniqueness by reducing their AIC scores. The removal of social vs. solitairy nesting behavior,
pollen carrying structure, larval diet preference and peak seasonal abundance were more
contrasted in their contributions to the model fits. Conversely, traits pertaining to adult diet
preferences (nectar or pollen) and flower visiting time reduced the fit of all models,
suggesting that these traits either did not affect the position of the pollinators in the
functional niche space in relation to their network roles, or even added noise that masked
any relationship.
140
141
142
143
144
145
146
147
148
This jack-knife analysis allowed us to directly link specific traits to their impact on network
structure: in addition to determining each species’ contribution to functional diversity, we
were able to identify which specific traits were responsible for the relative positioning of
species in the functional niche space, and predict these positions using metrics that define
the arrangement of species interactions within a network. This can inform the selection of
traits to be used when predicting that two given species will interact according to trait
matching (Dehling et al. 2014; Dray et al. 2014). However, it should be noted that individual
11
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
traits are not necessarily independent from each other, such that the presence of one trait
could be associated with that of another (Fenster et al. 2004). When quantifiable, assigning
weights to these trait complexes (e.g. as we did for the traits relating to body size) when
estimating functional diversity is an important step. Using a jack-knife approach may
nonetheless not reflect the importance of traits in determining interaction partners when
they are involved in such complexes.
Figure S3: Results of the jack-knife removal of species traits from the calculation of
pollinator functional originality and uniqueness on their predictive power of normalised
degree (ND) and specificity (HS). Negative values show a reduced fit of the model when the
corresponding trait is removed, indicating that the corresponding trait is important for
relating functional and network roles; positive values suggest the corresponding traits are
degrading the model fit. b.size = body size, daily = hour of peak daily activity based on
abundances, soc.sol = social vs. solitary, carrying.structure = the presence of a pollen
carrying structure, such as corbiculae, larv.diet = larval diet, season = month of peak
seasonal activity based on abundances, nec.poll = foraging preference for nectar or pollen,
vis.time = mean duration of flower visitation.
12
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
APPENDIX 4: R code used for analyses.
library(FD)
library(ESM)
library(bipartite)
library(magrittr)
#################################################################################
# code by Camille Coux
# last modified 20 Jan 2016
# This is code for the analysis ran to obtain results in our manuscript. We
# provide it as a courtesy and in an effort of transparency and reproducibility.
################################################################################
#
#
#
#
#
#
#
#
#
2 functions to calculate species' functional originality and uniqueness:
- species_coords calls the dbFD function from FD package to calculate species'
coordinates in the trait space, and rearranges the outputs
- FD_measures calculates originality and uniqueness for species present in
a given community.
Inputs are the same as those needed for dbFD; row/column name-matching applies.
Output: a dataframe with species as rows and FD measures as columns, in addition
to abundances and farm (site name).
library(FD)
# The coordinates are calculated for the whole community, it's the centroid
# that's going to change coordinates. And then I'll just need to adapt the nearest
# neighbour part such that only the distances to *present* neighbours are
calculated.
species_coords <- function(traitmat, abund, weights, ...){
# calculating species' coordinates and the centroid
coords <- dbFD(traitmat, abund, w=weights, corr="cailliez", print.pco=T)$x.axes
# now first calculating the centroid of the pollis present for each site
centr <- list(NULL)
# centr = averaged trait values for pollis present. 14 dimensions for 21 sites.
for(i in 1:length(abund[,1])){
pres <- which(abund[i,]>0)
vec <- coords[as.logical(abund[i,]),]
w <- abund[i,pres]
centr[[i]] <- apply(vec, 2, weighted.mean, w = w)
}
centr <- do.call(rbind, centr)
rownames(centr) <- rownames(abund)
return(list(coords=coords, centr=centr))
}
# now to calculate originality and uniqueness
FD_measures <- function(coords, centr, abund){
13
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
# adds a line for the centroid coodinates in each community
coords2 <- list(NULL)
for (i in 1:length(abund[,1])){
coords2[[i]] <- data.frame(rbind(coords, centr[i,]))
rownames(coords2[[i]])[dim(coords)[1]+1] <- "centr"
}
dists_centr
<- lapply(coords2, function(x){
d.poll<- as.matrix(dist(x, diag=TRUE, upper=TRUE))
for (i in 1:dim(d.poll)[1]) {d.poll[i,i] <- NA}
return(d.poll)
})
# Originality: Distance to centroid of the species present
originality<- unlist(lapply(1:length(abund[,1]), function(i){
dists <- dists_centr[[i]]
pres <- which(abund[i,]>0)
dists[pres,dim(dists)[1]]
}))
# Uniqueness: nearest neighbour among present species
uniqueness <- unlist(lapply(1:length(abund[,1]), function(i){
pres <- which(abund[i,]>0)
dists <- dists_centr[[i]][pres,pres]
uniq <- NULL
for (j in 1:length(pres)){uniq <- c(uniq, min(dists[j,], na.rm=T))}
return (uniq)
}))
# also need to keep track of farm, species names and their abundances
measures <- do.call(rbind, lapply(1:length(abund[,1]), function(i){
pres <- which(abund[i,]>0)
abundance <- abund[i, pres]
sp <- names(abundance)
site <- rownames(abund)[i]
farm <- rep(site, length(pres))
tab <- data.frame(farm=farm, sp=sp, abundance=as.numeric(abundance))
return (tab)
}))
# merge all
measures$orig <- originality
measures$uniq <- uniqueness
return(as.data.frame(measures))
}
14
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
#################################################################################
# FD and bipartite metric calculation with ntw weighed by the number of insect
# individuals from a same species carrying pollen of 1 plant.
#################################################################################
library(ESM)
library(bipartite)
library(magrittr)
### 1. Import data:
### ###############
## pollinator traits
t3 <- read.table("pollinator_traits.csv", sep=",", header=T, row.names = 1 )
# assign pollinator trait weights
weight <- c(0.5, 0.5,1,0.5,0.5,1, rep(1/6, 6), rep(1,3))
## plant traits
pl_t <- read.table("plant_traits.csv", sep=",", header=T, row.names = 1 )
# assign plant trait weights
pl.weight <- c(rep(1, 8), rep(0.25, 4), rep(1, 3))
## import abudances
a2 <- read.table("pollinator_abundances.csv", sep=",", header=T, row.names = 1 )
a <- as.matrix(a2)
a[which(a>0)] <- 1
p <- read.table("plant_abundances_bin.csv", sep=",", header=T, row.names = 1 )
# outlier check (methods from the R Book, Crawley M.J., 2007, p363)
leverage<-function(x){1/length(x)+(x-mean(x))^2/sum((x-mean(x))^2)}
x1 <- a2[a2>0]
# pdf("C:/Users/camille/Desktop/PhD/Australian data/mes trucs/FD/fdisp/proper
intnat/scaled_strength/revisions/figs/final_figs/S2.pdf")
plot(leverage(x1),type="h", ylab="Pollinator abundances")
points(leverage(x1))
# A general rule is that a point is highly influential if its leverage is
# greater than 2P/N, where p is the number of parameters in the model and
# N is the number of data points.
P <- 5; N <- length(x1)
abline(((2*P)/N),0,lty=2)
# dev.off()
# point 47 is clearly an outlier; it corresponds to the L_sordidum abundance in
15
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
#
#
#
#
the first site. We replace its abundance by 0 in the abundance matrix, such that
the FD space is calculated without it. The analysis is repeated without changing
the
abundance of this outlier and presented in Appendix 3.
a2[1,"L_sordidum"] <- 0
## arranging interactions into a list adjacency matrices (one for each site)
interactions <- read.table("interactions.csv", sep=",", header=T, row.names = 1 )
interactions %>%
split(., .$Site) %>%
lapply(., function(x){
net <- matrix(x$Links, nrow=length(unique(x$Pol_sp)),
ncol=length(unique(x$Plant_sp)))
colnames(net)<- unique(x$Plant_sp)
rownames(net) <- unique(x$Pol_sp)
return(net)
}) -> ntw
# calculating FD outputs
# ######################
#
pol.coords <- species_coords(t3, a, weight, na.rm=T) # species scores in the trait
space
pol.measures <- FD_measures(pol.coords$coords, pol.coords$centr, a2) # keep
weighted
# abundance matrix to keep track of abundances in the analysis
pl.coords <- species_coords(pl_t, p, pl.weight)
pl.measures <- FD_measures(pl.coords$coords, pl.coords$centr, p)
# with weighted centroid: only originality should change
w.pol.coords <- species_coords(t3,a2,weight)
w.pol.measures <- FD_measures(w.pol.coords$coords, w.pol.coords$centr, a2)
colnames(w.pol.measures)[which(colnames(w.pol.measures)=="orig")] <- "w.orig"
colnames(w.pol.measures)[which(colnames(w.pol.measures)=="uniq")] <- "w.uniq"
# Calculating bipartite metrics
###############################
# for pollinator communities
ntw %>% lapply(., getspe, measure="hs") %>% do.call(c,.) -> pol.hs
ntw <- lapply(ntw, t)
ntw %>% lapply(., getspe, measure="hs") %>% do.call(c,.) -> pl.hs
16
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
ntw %>%
lapply(., specieslevel, index=c(
"normalised degree", "species strength","species specificity", "d", "PDI"),
level="higher") %>%
do.call(rbind, .) -> splvl.pollis
# for plant communities
ntw %>%
lapply(., specieslevel, index=c(
"normalised degree", "species strength","species specificity", "d", "PDI"),
level="lower") %>%
do.call(rbind, .) -> splvl.plants
# removing the L.sordidum outlier from spslevel but keeping line in
splvl.pollis[4,] <- NA
pol.hs[4] <- NA
pol.measures <- rbind(pol.measures[1:3,], c(NA, NA, NA), pol.measures[4:89,])
w.pol.measures <- rbind(w.pol.measures[1:3,], c(NA, NA, NA),
w.pol.measures[4:89,])
# combine data
pol.rev <- cbind(pol.measures, w.pol.measures, splvl.pollis, pol.hs)
plant.rev <- cbind(pl.measures, splvl.plants, pl.hs)
#################################################################################
# Analysis code
# NB: here, weighted abundances correspond to individuals from a same species
# carrying pollen of 1 plant.
#################################################################################
require(nlme)
require(MuMIn)
sizes <- lapply(ntw, length)
pol.rev %>% split(., .$farm) -> pol.rev
pol.rev <- lapply(1:21, function(i){
x <- pol.rev[[i]]
x$size <- rep(sizes[[i]], dim(x)[1])
return(x)
})
pol.rev <- do.call(rbind, pol.rev)
plant.rev %>% split(., .$farm) -> plant.rev
plant.rev <- lapply(1:21, function(i){
x <- plant.rev[[i]]
x$size <- rep(sizes[[i]], dim(x)[1])
return(x)
})
plant.rev <- do.call(rbind, plant.rev)
17
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
mumin_proc <- function(model){
ms <- dredge(model, rank="AICc", REML=F)
msList <- get.models(ms, subset = delta < 2, method="REML")
if (length(msList)>1){
output <- list(ms=ms, avg = summary(model.avg(msList)))
}else{
output <- ms
}
return(output)
}
# ORIGINALITY - ND
summary(pol.bin.orig.ND<-lme(normalised.degree ~ orig* size + orig*abundance,
random=~1|farm, na.action=na.fail, data=pol.rev, method="REML"))
mumin_proc(pol.bin.orig.ND)
# weighted
summary(pol.W.orig.ND<-lme(normalised.degree ~ w.orig* size + abundance*w.orig,
random=~1|farm, na.action=na.fail, data=pol.rev, method="REML"))
mumin_proc(pol.W.orig.ND)
# ORIGINALITY - hs
summary(pol.bin.orig.hs<-lme( pol.hs ~ orig* size + orig*abundance,
random=~1|farm, na.action=na.fail, data=pol.rev, method="REML"))
mumin_proc(pol.bin.orig.hs)
# weighted
summary(pol.W.orig.hs<-lme( pol.hs ~ w.orig* size + abundance*w.orig,
random=~1|farm, na.action=na.fail, data=pol.rev, method="REML"))
mumin_proc(pol.W.orig.hs)
# UNIQUENESS (nearest neighbour) - ND
summary(uniq.ND<-lme(normalised.degree ~ uniq* size + uniq*abundance,
random=~1|farm, na.action=na.fail, data=pol.rev, method="REML"))
mumin_proc(uniq.ND)
# UNIQUENESS (nearest neighbour) - hs
summary(uniq.hs<-lme(pol.hs ~ uniq* size + uniq*abundance, random=~1|farm,
na.action=na.fail, data=pol.rev, method="REML"))
mumin_proc(uniq.hs)
##############
### PLANTS ###
##############
18
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
# ORIGINALITY - ND
summary(pl.bin.orig.ND<-lme(normalised.degree ~ pl.orig* size, random=~1|farm,
na.action=na.fail, data=plant.rev, method="REML"))
mumin_proc(pl.bin.orig.ND)
# ORIGINALITY - HS
summary(pl.bin.orig.hs<-lme(hs ~ pl.orig* size, random=~1|farm,
na.action=na.fail, data=plant.rev, method="REML"))
mumin_proc(pl.bin.orig.hs)
# UNIQUENESS (nearest neighbour) - ND
summary(pl.uniq.ND<-lme(normalised.degree ~ pl.uniq* size, random=~1|farm,
na.action=na.fail, data=plant.rev, method="REML"))
mumin_proc(pl.uniq.ND)
# UNIQUENESS(nearest neighbour) - hs
summary(pl.uniq.hs<-lme(hs ~ pl.uniq* size, random=~1|farm, na.action=na.fail,
data=plant.rev, method="REML"))
mumin_proc(pl.uniq.hs)
19
APPENDIX 5: Collinearity among predictor variables
We evaluated collinearity among our predictor variables by grouping them in a global model predicting normalized degree for pollinators and plant models
(without relative abundances), including site as a random effect. The following two tables represent the correlation structure of the predictors. Given there
were some strong collinear effects, we used these variables in separate models in our analyses.
POLLINATORS
pol.uni
w.pol.or
size
pol.ab
pol.uni:w.pol.or
pol.uni:size
pol.uni:pol.ab
w.pol.or:size
w.pol.or:pol.ab
size:pol.ab
(Intr)
-0.974
-0.856
-0.459
-0.477
0.83
0.227
0.49
0.474
0.121
0.303
pol.uni w.pol.or
PLANTS
plant.uni
pl.orig
size
plant.uni:pl.orig
plant.uni:size
pl.orig:size
(Intr)
-0.786
-0.72
-0.671
0.835
0.289
0.154
plant.uni
pl.orig
size
pl.uni:pl.orig
pl.uni:size
0.291
0.46
-0.776
-0.571
0.272
0.324
-0.764
0.224
-0.549
-0.319
-0.533
-0.047
0.151
0.11
-0.757
0.803
0.417
0.476
-0.819
-0.271
-0.513
-0.358
-0.109
-0.213
0.199
0.34
-0.974
0.116
-0.347
-0.538
-0.035
-0.315
size
0.001
-0.115
-0.803
-0.016
-0.666
0.101
-0.186
pol.ab pol.uni:w.pol.or pol.uni:pol.ab
-0.325
0.037
-0.978
-0.014
-0.525
-0.35
-0.14
0.353
0.42
-0.009
0.264
20
-0.023
0.126
-0.072
-0.076
pol.uni:pol.ab
0.026
0.425
0.308
w.pol.or:size w.pol.or:pol.ab
-0.121
0.373
-0.327
APPENDIX 6: Additional figures
Figure S4: Variation in specificity (left) and species strength (right) across sites according to
pollinator identity. Raw values are shown to indicate the frequency of each species occurrences
across sites. Species are ordered according to their increasing mean distinctiveness in all figures.
21
CITED REFERENCES:
1.Chacoff, N.P., Vázquez, D.P., Lomáscolo, S.B., Stevani, E.L., Dorado, J. & Padrón, B. (2012).
Evaluating sampling completeness in a desert plant-pollinator network. J. Anim. Ecol., 81, 190–200.
2.Colles, D.H. & McAlpine, D.K. (1991). Diptera. In Insects of Australia. Johns Hopkins Univ. Press.
second ed.
3.Crawley, M.J. (2007). The R book. John Wiley & Sons Ltd., Chichester, UK.
4.Dehling, D.M., Töpfer, T., Schaefer, H.M., Jordano, P., Böhning-Gaese, K. & Schleuning, M. (2014).
Functional relationships beyond species richness patterns: trait matching in plant–bird mutualisms
across scales. Glob. Ecol. Biogeogr., n/a–n/a.
5.Donovan, B.J. (2007). Apoidea (Insecta: Hymenoptera). Fauna New Zealand. Landcare Res. Ltd.,
Christchurch, New Zeal.
6.Dray, S., Choler, P. & Doledec, S. (2014). Combining the fourth-corner and the RLQ methods for
assessing trait responses to environmental variation. Ecology, 95, 14–21.
7.Fenster, C.B., Armbruster, W.S., Wilson, P., Dudash, M.R. & Thomson, J.D. (2004). Pollination
Syndromes and Floral Specialization. Annu. Rev. Ecol. Evol. Syst., 35, 375–403.
8.Gagic, V., Bartomeus, I., Jonsson, T., Taylor, A., Winqvist, C., Fischer, C., et al. (2015). Functional
identity and diversity of animals predict ecosystem functioning better than species-based indices.
Proc. Biol. Sci., 282.
9.Howlett, B.G., Donovan, B.J., McCallum, J. a, Newstrom, L.E. & Teulon, D. a. (2005). Between and
within field variability of New Zealand indigenous flower visitors to onions. New Zeal. plant Prot., 58,
213–218.
10.Kearns, C.A. & Inouye, D.W. (1993). Techniques for pollination biologists. Univ. Press. Colorado.
11.Michener, C.D. (2007). The Bees of the World. Johns Hopkins Univ. Press. Baltimore, MD.
12.Rader, R., Howlett, B.G., Cunningham, S. a., Westcott, D. a., Newstrom-Lloyd, L.E., Walker, M.K.,
et al. (2009). Alternative pollinator taxa are equally efficient but not as effective as the honeybee in
a mass flowering crop. J. Appl. Ecol., 46, 1080–1087.
22
© Copyright 2026 Paperzz