Seed plant disparity analysis scripts and data
Data files
Aug 06, 2026 version files 1.87 MB
-
Analysis.R
158.68 KB
-
Character_Data_annotated.csv
453.27 KB
-
Character_Data.csv
444.10 KB
-
Operations_BinaryTableMaker.R
3.34 KB
-
Operations_Main.R
17.09 KB
-
ops_Description.txt
2.92 KB
-
ops_FSC.csv
58 B
-
ops_organ.sep.csv
440 B
-
ops_TU.csv
496 B
-
ops_TUC.csv
514 B
-
Organ_Table_Sources.txt
17.24 KB
-
Organ_Table.csv
52.31 KB
-
README.md
10.13 KB
-
tree_STULLdated.tree
44.37 KB
-
tree_Zuntini_old.tree
331.69 KB
-
tree_Zuntini_young.tree
328.79 KB
Abstract
Seed plant reproductive structures are highly diverse, but analyzing morphological disparity across the group is challenging because their reproductive structures are difficult to directly compare. Here we develop an approach that accommodates divergent structures and unclear homologies, treating basic structural units as analogous and analyzing characters within these units. We scored 284 acrogymnosperm and angiosperm cones and flower-fruits for 47 discrete characters and calculated morphological distances based on character mismatches among organ sets, treating character absence as a state. We then performed two analyses: one focused on the diversity of structural units, and another focused on character diversity, where information from all structural units was collapsed into a single space. In both analyses, we found low reproductive disparity within most acrogymnosperm lineages but high disparity across them. Major angiosperm clades, by contrast, consistently show high disparity and occupy broad, overlapping regions of morphospace. Seed plant groups therefore appear to evolve disparity in fundamentally different ways: acrogymnosperms exhibit high levels among major lineages while angiosperms show high disparity both within and among major lineages. The approach we use to identify these patterns is also generalizable to other systems with serial homology and/or highly divergent morphologies.
This readme.txt file was generated on 2026-07-13 by ANDREW LESLIE
GENERAL INFORMATION
-
Title of Dataset: Seed plant disparity analysis scripts and data
-
Author Information
A. Principal Investigator Contact Information
Name: Andrew Leslie
Institution: Stanford University
Address: 450 Jane Stanford Way, Building 320, Room 118,
Stanford, CA 94305, USA.
Email: aleslieb@stanford.eduB. Associate or Co-investigator Contact Information
Name: Marco D'Ario
Institution: Stanford University
Address: 450 Jane Stanford Way, Building 320, Room 118,
Stanford, CA 94305, USA.
Email: dariom@stanford.edu
DATA & FILE OVERVIEW
File List:
- Analysis.R
- Character_Data.csv
- Character_Data_annotated.csv
- Operations_BinaryTableMaker.R
- Operations_Main.R
- ops_FSC.csv
- ops_organ.sep.csv
- ops_TU.csv
- ops_TUC.csv
- ops_Description.txt
- Organ_Table.csv
- Organ_Table_Sources.txt
- tree_STULLdated.tree
- tree_Zuntini_old.tree
- tree_Zuntini_young.tree
"Character_Data.csv" contains the data and character scorings used in the analyses and can be read into the R script to reproduce results, main figures, and supplemental figures reported in the manuscript
"Character_Data_annotated_.csv" is identical to "Character Data.csv" but contains character names.
"Analysis.R" is an R script that will reproduce the results, main figures, and supplemental figures reported in the manuscript using the files provided here.
"Operations_BinaryTableMaker.R" and "Operations_Main.R" files contain the source code for calculating morphological distances among taxa and generating simulated character combinations.
"ops_FSC.csv","ops_organ.sep.csv", "ops_TU.csv",and "ops_TUC.csv" files are input files for "Analysis.R" that perform organ ID reassignments.
"ops_Description.txt" describes the operation functions used in the "ops.csv" files.
"Organ_Table.csv" contains organ categories and alignment used for structural analyses in all taxa.
"Organ_Table_Sources.txt" is a numeric list of citations referenced in "Organ_Table.csv"
"tree_X.tree" files are time-calibrated phylogenies used in analyses.
SPECIFIC INFORMATION FOR: Analysis.R
This annotated R script contains all commands necessary to reproduce the analyses and plots from Figures 3-4 in the main text, and Figures S1-S6 in the Supplement. It uses "Character Data_MS.R", "Operations_BinaryTableMaker.R", "Operations_Main.R", "ops_FSC.csv","ops_organ.sep.csv","ops_TU.csv","ops_TUC.csv", "tree_STULLdated.tree", "tree_Zuntini_old.tree", "tree_Zuntini_young.tree" as inputs.
DATA-SPECIFIC INFORMATION FOR: Character Data.R
-
Number of variables: 856
-
Number of cases/rows: 415
-
Variable List:
- taxon: species to which each reproductive structure belongs.
- type: whether the taxon belongs to (acro)gymnosperms or angiosperms.
- group: taxonomic grouping used in some analyses.
- group_tag: an abbreviated group ID tag.
- clade: family to which each reproductive structure belongs.
- clade_tag: an abbreviated clade ID tag.
- clade2: additional clade divisions within eudicots
- clade2_tag: an abbreviated clade2 ID tag.
- staminate: whether (1) or not (0) the reproductive structure is a dedicated pollen-producing structure.
- ovulate: whether (1) or not (0) the reproductive structure produces functional ovules/seeds.
11-57.character scorings for I.1 organs. A list of characters and description of states are provided in Supporting Information.
58-104. character scorings for I.2 organs. A list of characters and description of states are provided in Supporting Information.
105-151. character scorings for A.1 organs. A list of characters and description of states are provided in Supporting Information.
152-198. character scorings for A.2 organs. A list of characters and description of states are provided in Supporting Information.
199-245. character scorings for L1A.1 organs. A list of characters and description of states are provided in Supporting Information.
246-292. character scorings for L1A.2 organs. A list of characters and description of states are provided in Supporting Information.
293-339. character scorings for L1B.1 organs. A list of characters and description of states are provided in Supporting Information.
340-386. character scorings for L1B.2 organs. A list of characters and description of states are provided in Supporting Information.
387-433. character scorings for L1B.3 organs. A list of characters and description of states are provided in Supporting Information.
434-480. character scorings for L1C.1 organs. A list of characters and description of states are provided in Supporting Information.
481-527. character scorings for L1C.2 organs. A list of characters and description of states are provided in Supporting Information.
528-574. character scorings for L1C.3 organs. A list of characters and description of states are provided in Supporting Information.
575-621. character scorings for L1D.1 organs. A list of characters and description of states are provided in Supporting Information.
622-668. character scorings for L1D.2 organs. A list of characters and description of states are provided in Supporting Information.
669-715. character scorings for L1E organs. A list of characters and description of states are provided in Supporting Information.
716-762. character scorings for L2A.1 organs. A list of characters and description of states are provided in Supporting Information.
763-809. character scorings for L2A.2 organs. A list of characters and description of states are provided in Supporting Information.
810-856. character scorings for L2B organs. A list of characters and description of states are provided in Supporting Information.
-
Missing data codes: absent character scorings left blank (for variables 11-856). Non-applicable clade2 and clade2_tag codes (variables 7,8) given by "NA".
DATA-SPECIFIC INFORMATION FOR: Character Data_annotated.R
- Number of variables: 856
- Number of cases/rows: 415
- Variable List: Identical to Character Data.R
DATA-SPECIFIC INFORMATION FOR: Operations_BinaryTableMaker.R
This R script is sourced by "Analysis_MS.R" and produces organ-level trait combinations.
DATA-SPECIFIC INFORMATION FOR: Operations_Main.R
This R script is sourced by "Analysis_MS.R" and is used to calculate morphological distances among taxa. It also includes additional functions for manipulating data frames and calculating contributions of characters to ordination axes.
DATA-SPECIFIC INFORMATION FOR: ops_FSC.csv, ops_organ.sep.csv, ops_TUC.csv
These csv files contain sets of specific operations required for different analyses. These files are sourced by "Analysis_MS.R".
DATA-SPECIFIC INFORMATION FOR: ops_Description.txt
This text file contains a description of the various operations used in this study to manipulate and rearrange organ level alignments and character state transformations.
DATA-SPECIFIC INFORMATION FOR: Organ_Table.csv
This csv file contains organ category assignments for all taxa used in this study.
- Number of variables: 26
- Number of cases/rows: 345
- Variable List:
- taxon: species to which each reproductive structure belongs.
- division: whether the taxon belongs to (acro)gymnosperms or angiosperms.
- group: taxonomic grouping used in some analyses.
- clade: family to which each reproductive structure belongs.
- plot_order: the phylogenetic order in which groups occur and are plotted in figures from the main text.
- type: whether the reproductive structures produces seeds or produces only pollen.
- I.1: name of the plant organ categorized as an I.1 organ in this analysis.
- I.1: name of the plant organ categorized as an I.2 organ in this analysis.
- A.1: name of the plant organ categorized as an A.1 organ in this analysis.
- A.2: name of the plant organ categorized as an A.2 organ in this analysis.
- L1A.1: name of the plant organ categorized as an L1A.1 organ in this analysis.
- L1A.2: name of the plant organ categorized as an L1A.2 organ in this analysis.
- L1B.1: name of the plant organ categorized as an L1B.1 organ in this analysis.
- L1B.2: name of the plant organ categorized as an L1B.2 organ in this analysis.
- L1B.3: name of the plant organ categorized as an L1B.3 organ in this analysis.
- L1C.1: name of the plant organ categorized as an L1C.1 organ in this analysis.
- L1C.2: name of the plant organ categorized as an L1C.2 organ in this analysis.
- L1C.3: name of the plant organ categorized as an L1C.3 organ in this analysis.
- L1D.1: name of the plant organ categorized as an L1D.1 organ in this analysis.
- L1D.2: name of the plant organ categorized as an L1D.2 organ in this analysis.
- L1E: name of the plant organ categorized as an L1E organ in this analysis.
- L2A.1: name of the plant organ categorized as an L2A.1 organ in this analysis.
- L2A.2: name of the plant organ categorized as an L2A.2 organ in this analysis.
- L2B: name of the plant organ categorized as an L2B organ in this analysis.
- source: numeric list of references for taxon character and organ scoring. Numbers correspond to those listed in "Organ_Table_Sources.txt".
- notes: information on symbols used to denote different types of organs.
- Missing data codes: missing or inapplicable character scorings left blank
DATA-SPECIFIC INFORMATION FOR: Organ_Table_Sources.txt
This text file contains a numbered list of all sources for character and organ scorings. The numbers correspond to those associated with each reproductive structure in the "source" column of the "Organ_Table.csv" file.
DATA-SPECIFIC INFORMATION FOR: tree_STULLdated.tree, tree_Zuntini_old.tree, tree_Zuntini_young.tree
These .tree files are used to provide pairwise divergence ages between taxa for analyses. Full citations for these studies are given in the main text.
