From a02a861918008bb11a8d080d8491675576ea2364 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 27 Nov 2024 06:42:06 +0000 Subject: [PATCH] Deployed 952c725 with MkDocs version: 1.6.1 --- .nojekyll | 0 404.html | 1009 +++ .../index.html | 14 + .../Use-case-3/index.html | 1060 +++ .../index.html | 14 + .../index.html | 14 + .../index.html | 1073 +++ .../Axis-flip-orientation/index.html | 1052 +++ Basic-Functions/BLAST-search/index.html | 1059 +++ Basic-Functions/Feature-search/index.html | 1143 +++ Basic-Functions/Moving-axes/index.html | 1052 +++ .../Search-and-filter-datasets/index.html | 1070 +++ .../Zooming-in-and-out-of-datasets/index.html | 1082 +++ Deprecated/setup/index.html | 1062 +++ Self-Hosting/Extended-features/index.html | 1217 +++ Self-Hosting/Quick-setup/index.html | 1268 ++++ .../index.html | 1071 +++ Use-Cases/VCF-genotype-search/index.html | 1168 +++ .../index.html | 1077 +++ .../index.html | 1063 +++ User-Stories/User-story-1/index.html | 1458 ++++ User-Stories/User-story-2/index.html | 1250 +++ User-Stories/User-story-3/index.html | 1371 ++++ aggdocs/index.html | 14 + assets/images/favicon.png | Bin 0 -> 1870 bytes assets/javascripts/bundle.83f73b43.min.js | 16 + assets/javascripts/bundle.83f73b43.min.js.map | 7 + assets/javascripts/lunr/min/lunr.ar.min.js | 1 + assets/javascripts/lunr/min/lunr.da.min.js | 18 + assets/javascripts/lunr/min/lunr.de.min.js | 18 + assets/javascripts/lunr/min/lunr.du.min.js | 18 + assets/javascripts/lunr/min/lunr.el.min.js | 1 + assets/javascripts/lunr/min/lunr.es.min.js | 18 + assets/javascripts/lunr/min/lunr.fi.min.js | 18 + assets/javascripts/lunr/min/lunr.fr.min.js | 18 + assets/javascripts/lunr/min/lunr.he.min.js | 1 + assets/javascripts/lunr/min/lunr.hi.min.js | 1 + assets/javascripts/lunr/min/lunr.hu.min.js | 18 + assets/javascripts/lunr/min/lunr.hy.min.js | 1 + assets/javascripts/lunr/min/lunr.it.min.js | 18 + assets/javascripts/lunr/min/lunr.ja.min.js | 1 + assets/javascripts/lunr/min/lunr.jp.min.js | 1 + assets/javascripts/lunr/min/lunr.kn.min.js | 1 + assets/javascripts/lunr/min/lunr.ko.min.js | 1 + assets/javascripts/lunr/min/lunr.multi.min.js | 1 + assets/javascripts/lunr/min/lunr.nl.min.js | 18 + assets/javascripts/lunr/min/lunr.no.min.js | 18 + assets/javascripts/lunr/min/lunr.pt.min.js | 18 + assets/javascripts/lunr/min/lunr.ro.min.js | 18 + assets/javascripts/lunr/min/lunr.ru.min.js | 18 + assets/javascripts/lunr/min/lunr.sa.min.js | 1 + .../lunr/min/lunr.stemmer.support.min.js | 1 + assets/javascripts/lunr/min/lunr.sv.min.js | 18 + assets/javascripts/lunr/min/lunr.ta.min.js | 1 + assets/javascripts/lunr/min/lunr.te.min.js | 1 + assets/javascripts/lunr/min/lunr.th.min.js | 1 + assets/javascripts/lunr/min/lunr.tr.min.js | 18 + assets/javascripts/lunr/min/lunr.vi.min.js | 1 + assets/javascripts/lunr/min/lunr.zh.min.js | 1 + assets/javascripts/lunr/tinyseg.js | 206 + assets/javascripts/lunr/wordcut.js | 6708 +++++++++++++++++ .../workers/search.6ce7567c.min.js | 42 + .../workers/search.6ce7567c.min.js.map | 7 + assets/stylesheets/main.6f8fc17f.min.css | 1 + assets/stylesheets/main.6f8fc17f.min.css.map | 1 + assets/stylesheets/palette.06af60db.min.css | 1 + .../stylesheets/palette.06af60db.min.css.map | 1 + index.html | 1081 +++ search/search_index.json | 1 + sitemap.xml | 3 + sitemap.xml.gz | Bin 0 -> 127 bytes 71 files changed, 30023 insertions(+) create mode 100644 .nojekyll create mode 100644 404.html create mode 100644 AGG-User-group-documentation/Finding-a-marker-or-gene-on-a-genome/index.html create mode 100644 AGG-User-group-documentation/Use-case-3/index.html create mode 100644 AGG-User-group-documentation/View-a-summary-of-accessions-for-a-searched-subset-of-markers/index.html create mode 100644 AGG-User-group-documentation/Visualise-the-location-of-a-subset-of-markers/index.html create mode 100644 Basic-Functions/Adding-and-removing-datasets-from-the-view/index.html create mode 100644 Basic-Functions/Axis-flip-orientation/index.html create mode 100644 Basic-Functions/BLAST-search/index.html create mode 100644 Basic-Functions/Feature-search/index.html create mode 100644 Basic-Functions/Moving-axes/index.html create mode 100644 Basic-Functions/Search-and-filter-datasets/index.html create mode 100644 Basic-Functions/Zooming-in-and-out-of-datasets/index.html create mode 100644 Deprecated/setup/index.html create mode 100644 Self-Hosting/Extended-features/index.html create mode 100644 Self-Hosting/Quick-setup/index.html create mode 100644 Use-Cases/Finding-a-marker-or-gene-on-a-genome/index.html create mode 100644 Use-Cases/VCF-genotype-search/index.html create mode 100644 Use-Cases/Visualise-genotype-data-for-a-subset-of-accessions-around-specific-genomic-regions/index.html create mode 100644 Use-Cases/Visualise-the-location-of-a-subset-of-markers/index.html create mode 100644 User-Stories/User-story-1/index.html create mode 100644 User-Stories/User-story-2/index.html create mode 100644 User-Stories/User-story-3/index.html create mode 100644 aggdocs/index.html create mode 100644 assets/images/favicon.png create mode 100644 assets/javascripts/bundle.83f73b43.min.js create mode 100644 assets/javascripts/bundle.83f73b43.min.js.map create mode 100644 assets/javascripts/lunr/min/lunr.ar.min.js create mode 100644 assets/javascripts/lunr/min/lunr.da.min.js create mode 100644 assets/javascripts/lunr/min/lunr.de.min.js create mode 100644 assets/javascripts/lunr/min/lunr.du.min.js create mode 100644 assets/javascripts/lunr/min/lunr.el.min.js create mode 100644 assets/javascripts/lunr/min/lunr.es.min.js create mode 100644 assets/javascripts/lunr/min/lunr.fi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.fr.min.js create mode 100644 assets/javascripts/lunr/min/lunr.he.min.js create mode 100644 assets/javascripts/lunr/min/lunr.hi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.hu.min.js create mode 100644 assets/javascripts/lunr/min/lunr.hy.min.js create mode 100644 assets/javascripts/lunr/min/lunr.it.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ja.min.js create mode 100644 assets/javascripts/lunr/min/lunr.jp.min.js create mode 100644 assets/javascripts/lunr/min/lunr.kn.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ko.min.js create mode 100644 assets/javascripts/lunr/min/lunr.multi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.nl.min.js create mode 100644 assets/javascripts/lunr/min/lunr.no.min.js create mode 100644 assets/javascripts/lunr/min/lunr.pt.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ro.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ru.min.js create mode 100644 assets/javascripts/lunr/min/lunr.sa.min.js create mode 100644 assets/javascripts/lunr/min/lunr.stemmer.support.min.js create mode 100644 assets/javascripts/lunr/min/lunr.sv.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ta.min.js create mode 100644 assets/javascripts/lunr/min/lunr.te.min.js create mode 100644 assets/javascripts/lunr/min/lunr.th.min.js create mode 100644 assets/javascripts/lunr/min/lunr.tr.min.js create mode 100644 assets/javascripts/lunr/min/lunr.vi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.zh.min.js create mode 100644 assets/javascripts/lunr/tinyseg.js create mode 100644 assets/javascripts/lunr/wordcut.js create mode 100644 assets/javascripts/workers/search.6ce7567c.min.js create mode 100644 assets/javascripts/workers/search.6ce7567c.min.js.map create mode 100644 assets/stylesheets/main.6f8fc17f.min.css create mode 100644 assets/stylesheets/main.6f8fc17f.min.css.map create mode 100644 assets/stylesheets/palette.06af60db.min.css create mode 100644 assets/stylesheets/palette.06af60db.min.css.map create mode 100644 index.html create mode 100644 search/search_index.json create mode 100644 sitemap.xml create mode 100644 sitemap.xml.gz diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 0000000..e69de29 diff --git a/404.html b/404.html new file mode 100644 index 0000000..1b1ffd4 --- /dev/null +++ b/404.html @@ -0,0 +1,1009 @@ + + + +
+ + + + + + + + + + + + + + +Log in with the provided details on https://dev2.plantinformatics.io/:
+Email Address (username)
+UserStory1@AGG
+
+Password
+UserStory1
+
+Note
+Please use the provided login account so you have access to all the relevant data
+Navigate to the 'Search' tab in the left pannel + +Within the 'VCF Genotype Search' box, select the drop down menu under 'VCF to search :' select
+Field pea AGG 30K genotype data sample
+
++Witin the same pannel input the following into 'Samples input :'
+Pulse.30K-0046-07-04|AGG2653PEAS2-B00001-6-04
+Pulse.30K-0046-07-93|AGG3349PEAS2-B00001-6-93
+Pulse.30K-0047-01-05|AGG2054PEAS2-B00001-5-05
+Pulse.30K-0047-02-12|AGG600PEAS2-B00001-3-12
+
+and the following into 'Features input :'
+AVR-Ps-00699.01-338683786
+AVR-Ps-09597.Trait_Linked
+AVR-Ps-00705.01-339200563
+
+After pressing the search button the geneotypes for the selected markers and accessions will be displayed on the right +
+ + + + + + + + + + + + + +Note
+By default, when the page loads it will always be on the Explorer Tab
++2. Clicking on the name of a dataset will highlight it and show information +about the data set on the right hand pannel
++3. Pressing the plus button will expand the dataset to reveal items that can be loaded into the view
++4. Pressing the green plus buttons will then bring that item into the view
++5. If the item is no longer need it can be removed by clicking on the title of the item in the view to reveal an additional menu. Then select the cross button in the centre
+Note
+The cross on the top right hand corner will close the box and not remove the dataset
++6. The dataset is now removed from view
+ + + + + + + + + + + + + + +Given an alignment in Pretzel, the orientation of axes can be inverted by clicking the axis title to bring up the axis title menu, then clicking the middle button. Close the axis title menu by clicking the X in the corner.
+ + + + + + + + + + + + + + +From the Map Viewer tab, click on Search tab, scroll down to DNA Sequence BLAST search and paste the DNA input sequence in FASTA format. For instance:
+>WAPO1
+ATGAACCTACTGCCTCACCACCACCTGTCGCTGCCGTCTGGGCCTGGCCGCCGCCCCTCCTCTGCGGCGGAGGCGGTGGAGATGGACCCGCGCGTGTGGCGCCGCCTGCCGCAGCCGCTGCTGGACCGCGTGCTGGCGTTCCTCCCGACGCCGTCCTTCCTCCGCGCCCGCGCCGTCTGCCGCCGCTTCTACCACCTCCTCTTCTCCTCCCCGTTCCTCCACTCTCACCTCCTCCACTCCCCGCACCTCCCCTTCTTCGCCTTCGCCGTCCCCTCCGCCGGCCACCTCCTCCTCCTCGATCCCACCTCCCAGCCGCAGGGACCCTCCTGGTTCCTCCTCCCGCTCCCGATCCCAGGTCCCGCCGCGGGGTTCTCGCCGGCTCCCGCGTCCGCTGGCCTGCTGGCGTTCCTCTCCGACGCGTCCGGCCACAAGACGCTGCTCCTCGCCAACCCCATCACGCGCCTCCTCGCCGCGCTGCCGCTCGGCCCCACGCAGCGCCTCTCCCCCACCGTCGGCCTGGCCGCGGGGTCGACGTCCATCATCGCCGTCGTGGCTGGCGACGACCTCGTGTCCCCTTTCGCCGTCAAGAACATCTCCGTCGACACCTTCGTCGCCGACGCCGCCTCCGTCCCGTCCTCCGGCTTCTGGGCCCCCAGCTCCCTCCTGCCACGCCTGTCCTCCCTCGATCCTCGCGCCGGCATGGCCTTCGCCTCCGGAAGGTTCTACTGCATGAGCTCGTCGCCGTTCGCGGTTCTCGTGTTCGACGTGGCGGCGAACGTCTGGAGCAAGGTGCAGCCGCCGATGAGGCGGTTCCTGCAGTCGCCGGCGCTGGTCGAGCTCGGCGGCGGCAGGGAGGGCTCGGGCACCGCAAGGGTGGGGCTCGTCGCGTCCGTGGAGAAGAGCCGTCTCAGCGTGCCGCGGAGCGTGCGCGTCTGGACACTGCGCGGCAGAGGAGGCTCCGGCGGCGGCGGCGGCGCGTGGAGCGAGGTGGCGCGGATGCCGCAGGACGTGCACGCGCAGTTCGCGGCGGCGGAGGGCGGCCGCGGGTTCGAGTGCGCAGCGCACGGCGACTTCGTCGCGCTAGCGCCCCGCGGCGGGCCGGCAGCCGTGCCGGTGCCGACGACCGTGCTCGTGTTCGACTCGCGCCGCGACGAGTGGCGGTGGGCGCCACCATGCCCATACGTCGGGCACGGCATGGCCGCAGTGGTCAACGGCGGAGGCGCGGGGTTCCGGGTCCTCGCGTACGAGCCACGCCTGGCGACGCCGGCCATCGGCCTTCTGGACGCCACGACGCCGGTGGCTTTGCATGGGATGCATGGTTAG
+
To view results, user can select/deselect the hits by clicking on square boxes under view tab in raw output data. Further, by clicking on the expand arrow (top right corner of BLAST output), user can view the BLAST results in table format and can also select/deslect the samples.
+ + + + + + + + + + + + + + +Note
+Feature search is case-sensitive, and the user needs to enter the full feature name for the search to work.
+From the Map Viewer tab, click on the Search tab, scroll down to Feature Search, paste the full Feature name in the search box and select Search. For instance: +
AVRIG33950
+ IWB31543
+
The search results and the total number of hits will be displayed under the Feature Search box. To view the results, click the green plus icon on the left side of each hit. Users can view the results simultaneously across all hits. The feature will be represented as a blue arrow, and the feature name can be displayed or removed by clicking on the arrow.
+ + AVRIG33950
+ IWB31543
+ IWB65513
+
+2. To remove a displayed feature, simply remove the feature name from the input list and click search again.
+ +Brush the axes between the features, and select the Features tab on the right side. All features will be displayed in a table format.
+ + + + + + + + + + + + + + +Holding Ctrl, click and drag an axis to re-organise the view.
+ + + + + + + + + + + + + + +Note
+By default, when the page loads it will always be on the Explorer Tab
++2. The results of the search will up down in the bottom most area coloured in blue. With the number just above the number of returned results.
+ +Note
+By default the search will search just the input (eg. "8 way magic"), toggling the search to "any" by pressing the green "all" button, will return any results that match its individual components (eg. "8", "way" and "magic").
+Note
+By default the search will not care about capitalisation of letters, by pressing the "insensitive" green button it will toggle the search to be "sensitive" to capitalisation, meaning it will only return results that match the word and exact capitalisation.
+Note
+The following documentation assumes that you already know how to Add a dataset into the view. To see details on how to view this please see:
+ +Zooming in and out on a dataset can be done in one of two ways, scrolling and selecting
+Note
+There are a number of methods to scroll depending on the device you are using. If you are using a mouse, moving the scroll wheel will zoom you in and out.
+For a quick start without installing any of the dependencies you will need docker engine running on your system.
+As noted below in Enable Use Of HandsOnTable, +the License Key for HandsOnTable can be passed in to the server via this environment variable : $handsOnTableLicenseKey
+This can be passed via the docker run command via -e, e.g.
+for a non-commercial project, e.g. research, it is permitted to define :
+docker run --name pretzel -e "handsOnTableLicenseKey=non-commercial-and-evaluation" ...
mkdir -p ~/mongodata \
+ && docker run --name mongo --detach --volume ~/mongodata:/data/db --net=host mongo:5.0 \
+ && until $(curl --silent --output /dev/null localhost:27017 || \
+ [ $(docker inspect -f '{{.State.Running}}' mongo) = "false" ]); do printf '.'; sleep 1; done \
+ && docker run --name pretzel --detach --net=host plantinformaticscollaboration/pretzel:stable \
+ && until $(curl --silent --output /dev/null localhost:3000 || \
+ [ $(docker inspect -f '{{.State.Running}}' pretzel) = "false" ] ); do printf '.'; sleep 1; done \
+ && docker logs pretzel
+
mongoDb versions 4 and 5 have been tested with Pretzel.
+md mongodata
+docker run --name mongo --detach --publish 27017:27017 --volume mongodata:/data/db mongo
+docker run --name pretzel -e "DB_HOST=host.docker.internal" --publish 3000:3000 plantinformaticscollaboration/pretzel:stable
+
If everything has worked so far, you should be able to open http://localhost:3000 in a browser and see a landing page. +You can create a user by signing up, then logging in with these details (by default, the user is created immediately without any extra verification).
+Once your pretzel instance is running you may want to populate it with some data.
+You can start by downloading and decompressing datasets (3 genetic maps) we have made available here. +In your instance of Pretzel, navigate to the Upload tab on the left panel, select JSON and browse to the location where you extracted the content of the downloaded file. Select and submit each of the three JSON files in turn. Once submitted, the maps should be visible in the Explorer tab.
+ + + + + + + + + + + + + +Note
+The vast majority of the configuration of Pretzel is done via the docker compose yaml and environment files. +As such a lot of the below points reference these files located in our github repo.
+A complete list of released pretzel images can be found on our dockerhub page.
+To change versions just edit the image:
field in the docker-compose.yaml
file.
api: # node environment
+...
+image: plantinformaticscollaboration/latest # replace latest with the desired version
+
docker compose --file docker-compose.prod.yaml --env-file pretzel.compose.prod.env up -d
+
If deploying a custom image you will need to build the image from source. See Building custom Pretzel API images
+To use the custom image you will need to update the image:
field in the docker-compose.yaml
file.
api: # node environment
+...
+image: # Path to the custom image or image tag name
+
Followed by deploying the new image with the following command:
+docker compose --file docker-compose.prod.yaml --env-file pretzel.compose.prod.env up -d
+
In the home directory of the cloned repo run the following commands to build the image:
+mkdir -p ~/log/build/docker # create the log directory if it doesn't exist
+sudo docker build . > ~/log/build/docker/$logDate
+
The image tag name will be displayed in the log file. Use this tag name in the image:
field in the docker-compose.yaml
file. As described in Deploying custom Pretzel API images.
If a directory is provided, this content is displayed in the Pretzel home page before the user logs in. This only supports static html content.
+landingPage= # directory containing static html content.
+
Only enable email verification if you have set up an Amazon SES SMTP email address. Otherwise accounts will be created with no means to verify them.
+EMAIL_VERIFY= # ADMIN or NONE
+
See Setting an Amazon SES SMTP email address for more information and for the values to use for the following variables.
+# EMAIL_ADMIN=user-email-admin@example.com
+# EMAIL_HOST=email-smtp.<region>.amazonaws.com
+EMAIL_PORT=25
+# EMAIL_PASS=...
+# EMAIL_USER=...
+# EMAIL_FROM=admin@example.com
+
Added in v3.1.0.
+The Pretzel API server will cache results for common requests, enabling them to be served more quickly and efficiently. This directory will be created within the Pretzel API server container, or if it is configured as a shared volume, then the resultsCache will be stored in the directory passed in. The benefit of this is that when the container is re-created, the resultsCache will be preserved. This is not essential, but will improve performance in particular for histograms where the chromosomes (Blocks) contain 1e5 - 1e7 features.
+ resultsCacheDir= # directory for results cache
+
Warning
+The following sections are for setting up your own instance of pretzel to load in non-public data for use in your own organisation. +For the latest public datasets please access them at agg.plantinformatics.io
+The following set up will be predominantly for linux users using docker. A windows version will be coming soon.
+Please make sure docker is installed before you proceed any further.
+Change to the directory where you want to place the relevant config files. +An example is shown below
+mkdir pretzel-docker-config && cd pretzel-docker-config && touch docker-compose.prod.yaml && touch pretzel.compose.prod.env
+
Using your text editor of choice create an environment file defining the configuration of directories, names and ports for the servers.
+Sample files are shown below, latest version can be found on our github
+# Prod
+
+# DATA_DIR= # directory for mongoDb database
+# mntData= # directory for Blast and VCF databases
+# landingPage= # directory containing index.html and web page content to display on the home page before the user logs in.
+# This dir maps to /app/node_modules/flat-cache/.cache and contains 1 file : resultsCache
+# resultsCacheDir=/home/ec2-user/home/resultsCache/prod
+#PORT=3010
+
+# Not used ?
+# INSTANCE=agg
+DB_NAME=pretzel
+# API_HOST=agg.plantinformatics.io
+API_PORT_PROXY=80
+API_PORT_EXT=3010
+hostIp=blastserver
+# Flask port is now internal to the compose network, so use fixed (default) 4000;
+# no need to configure via FLASK_PORT / BLASTSERVER_PORT.
+BLASTSERVER_PORT=4000
+# The value of API_PORT_PROXY is not (currently) a port, it is just defined or undefined.
+MONGO_DEFAULT_PORT=27017
+EMAIL_VERIFY=ADMIN
+# EMAIL_ADMIN=user-email-admin@example.com
+# EMAIL_HOST=email-smtp.<region>.amazonaws.com
+EMAIL_PORT=25
+# EMAIL_PASS=...
+# EMAIL_USER=...
+# EMAIL_FROM=admin@example.com
+# This enables using Feature.value_0 as an index field; all datbases now contain this field and this option can be made to default to true (1).
+use_value_0=1
+# If a handsOnTableLicenseKey is not provided, a prompt message will be displayed in the GUI. Insert your license here; Hands On Table allows non-commercial and evaluation use.
+# handsOnTableLicenseKey=non-commercial-and-evaluation
+
# NOTE refer to the accompanying '.env' file in this folder to access
+# environment variables which are passed through to docker-compose.yaml
+# at run time
+
+# NOTE this has been updated to the docker compose V2 format, this will not work with docker-compose
+
+name: pretzel-prod
+
+networks:
+ pretzel-prod:
+ driver: bridge
+
+services:
+ database: # mongo database
+ # MongoDb up to v5 has been tested OK
+ image: mongo:4.2.24
+# environment:
+# - "MONGO_INITDB_ROOT_USERNAME=${DB_USER}"
+# - "MONGO_INITDB_ROOT_PASSWORD=${DB_PASS}"
+ volumes:
+ - ${DATA_DIR}:/data/db
+ expose:
+ - "${MONGO_DEFAULT_PORT}"
+ networks:
+ - pretzel-prod
+
+ api: # node environment
+ depends_on:
+ - database
+ # Could have depends_on: blastserver, but it is not a critical dependency
+ build:
+ context: .
+ dockerfile: ./scripts/Dockerfile
+ image: plantinformaticscollaboration/pretzel:v3.1.0
+ command: node /app/lb3app/server/server.js
+ environment:
+ - "API_HOST=${API_HOST}"
+ - "API_PORT_EXT=${API_PORT_EXT}"
+ - "API_PORT_PROXY=${API_PORT_PROXY}"
+ - "hostIp=${hostIp}"
+ # Flask port is now internal to the compose network, so use fixed (default) 4000;
+ # no need to configure via FLASK_PORT / BLASTSERVER_PORT.
+ - "FLASK_PORT=4000" # ${BLASTSERVER_PORT}"
+ - "DB_HOST=database"
+ - "DB_PORT=${MONGO_DEFAULT_PORT}"
+ - "DB_NAME=${DB_NAME}"
+ - "DB_USER=${DB_USER}"
+ - "DB_PASS=${DB_PASS}"
+ - "EMAIL_HOST=${EMAIL_HOST}"
+ - "EMAIL_PORT=${EMAIL_PORT}"
+ - "EMAIL_USER=${EMAIL_USER}"
+ - "EMAIL_PASS=${EMAIL_PASS}"
+ - "EMAIL_FROM=${EMAIL_FROM}"
+ - "EMAIL_VERIFY=${EMAIL_VERIFY}"
+ - "EMAIL_ADMIN=${EMAIL_ADMIN}"
+ - "mntData=${mntData}"
+ - "handsOnTableLicenseKey=${handsOnTableLicenseKey}"
+ volumes:
+ # landingPage
+ - $landingPage:/app/client/landingPageContent
+ # blastVolume
+ - $mntData/blast:$mntData/blast
+ # vcfVolume
+ - $mntData/vcf:$mntData/vcf
+ - ${resultsCacheDir}:/app/node_modules/flat-cache/.cache
+
+ ports:
+ # match ext / int ports for loopback
+ - "${API_PORT_EXT}:${API_PORT_EXT}"
+ networks:
+ - pretzel-prod
+
+ blastserver: # Python Flask blastn server, based on a python image, used for DNA Sequence Search
+ image: plantinformaticscollaboration/blastserver:latest
+ environment:
+ - "FLASK_PORT=${BLASTSERVER_PORT}"
+ volumes:
+ # mntData=/mnt/data_blast
+ - $mntData/blast:/mnt/data/blast
+ # Enables scripts/blastn_cont.bash to run blastn via docker
+ - /usr/bin/docker:/usr/bin/docker
+ - /var/run/docker.sock:/var/run/docker.sock
+ expose:
+ - "4000"
+ networks:
+ - pretzel-prod
+
Create directories for the Pretzel MongoDb database, Blast database, and results cache, as defined by the paths in the environment file.
+It is recommended to use the following directory structure
+DATA_DIR= mongodb/db0 # mongoDB directory
+mntData= data_blast# blastBD and VCF file directroy
+
docker compose --file docker-compose.prod.yaml --env-file pretzel.compose.prod.env up -d
+
If this has been successfully set up you should see this screen.
+ + + + + + + + + + + + + + +Click the search button on the left hand panel
+ +Scroll down to the DNA Sequence BLAST search box
+ +Paste sequence into text box
+>WAPO1
+ATGAACCTACTGCCTCACCACCACCTGTCGCTGCCGTCTGGGCCTGGCCGCCGCCCCTCCTCTGCGGCGGAGGCGGTGGAGATGGACCCGCGCGTGTGGCGCCGCCTGCCGCAGCCGCTGCTGGACCGCGTGCTGGCGTTCCTCCCGACGCCGTCCTTCCTCCGCGCCCGCGCCGTCTGCCGCCGCTTCTACCACCTCCTCTTCTCCTCCCCGTTCCTCCACTCTCACCTCCTCCACTCCCCGCACCTCCCCTTCTTCGCCTTCGCCGTCCCCTCCGCCGGCCACCTCCTCCTCCTCGATCCCACCTCCCAGCCGCAGGGACCCTCCTGGTTCCTCCTCCCGCTCCCGATCCCAGGTCCCGCCGCGGGGTTCTCGCCGGCTCCCGCGTCCGCTGGCCTGCTGGCGTTCCTCTCCGACGCGTCCGGCCACAAGACGCTGCTCCTCGCCAACCCCATCACGCGCCTCCTCGCCGCGCTGCCGCTCGGCCCCACGCAGCGCCTCTCCCCCACCGTCGGCCTGGCCGCGGGGTCGACGTCCATCATCGCCGTCGTGGCTGGCGACGACCTCGTGTCCCCTTTCGCCGTCAAGAACATCTCCGTCGACACCTTCGTCGCCGACGCCGCCTCCGTCCCGTCCTCCGGCTTCTGGGCCCCCAGCTCCCTCCTGCCACGCCTGTCCTCCCTCGATCCTCGCGCCGGCATGGCCTTCGCCTCCGGAAGGTTCTACTGCATGAGCTCGTCGCCGTTCGCGGTTCTCGTGTTCGACGTGGCGGCGAACGTCTGGAGCAAGGTGCAGCCGCCGATGAGGCGGTTCCTGCAGTCGCCGGCGCTGGTCGAGCTCGGCGGCGGCAGGGAGGGCTCGGGCACCGCAAGGGTGGGGCTCGTCGCGTCCGTGGAGAAGAGCCGTCTCAGCGTGCCGCGGAGCGTGCGCGTCTGGACACTGCGCGGCAGAGGAGGCTCCGGCGGCGGCGGCGGCGCGTGGAGCGAGGTGGCGCGGATGCCGCAGGACGTGCACGCGCAGTTCGCGGCGGCGGAGGGCGGCCGCGGGTTCGAGTGCGCAGCGCACGGCGACTTCGTCGCGCTAGCGCCCCGCGGCGGGCCGGCAGCCGTGCCGGTGCCGACGACCGTGCTCGTGTTCGACTCGCGCCGCGACGAGTGGCGGTGGGCGCCACCATGCCCATACGTCGGGCACGGCATGGCCGCAGTGGTCAACGGCGGAGGCGCGGGGTTCCGGGTCCTCGCGTACGAGCCACGCCTGGCGACGCCGGCCATCGGCCTTCTGGACGCCACGACGCCGGTGGCTTTGCATGGGATGCATGGTTAG
+
+
+Select the reference to search from the drop down box, then click the search button directly above
+ +Click on the newly generated tab titled "Blast Output"
+ +Click on the check boxes to hide or show the results within the view
+ +Click on the expand button to display the raw BLAST output
+ +Raw BLAST output is displayed in table form
+ + + + + + + + + + + + + + +In this Use Case, a summary of genotypes for AGG Plant Genetic Resources can be simply and rapidly visualised. For example, a user may wish to view the genotypes for a set of accessions of interest at a small subset of trait linked markers, to make a decision on which accessions to use in an experiment. In this example we will use Pretzel to display a summary of a set of AGG barley Plant Genetic Resources at two markers +AVRIG00246 and AVRIG00484.
+Note
+The following feature is currently being developed. Please access it at https://dev.plantinformatics.io/login using the following login credentials. +Username: test@test +Password: test
+Click on the Search tab in the left navigation panel. + +While in the search tab, find the VCF Genotype Search box. +Within the box, select your VCF to search. + +This will load the VCF and give you a list of all the available samples. +If one is clicked it will automatically be added into selected samples input box. +
+Note
+The following search has only been tested up to 1000 samples. The interface will become extremely slow if a larger number of samples are selected. If it does become slow efresh the page to restart.
+To select a range of samples, hold down the CRTL key and select another sample in the list. +
+Within the Features input text box, paste your feature IDs. +The one used in this example is:
+AVRIG00246
+AVRIG00484
+
+
+Note
+This use case assumes that a genomic region of interest has already been identified. This can be done from either of the following use cases:
+ +This specific example continues on from Visualise the location of a subset of markers or a region
+Click back onto the Explore tab and search for a genotype dataset and add it to the view then in the view, click on the axis title. This dataset can be found on agg.plantinformatics.io
+Hordeum vulgare - MorexV3 - Genotypes - AGG Filled Release 1
+
+
+Within the window that pops up, click the far right hand button up the top to open the axis
+ +Close the axis title menu by clicking the "X" button in the top right corner
+ +Click and drag over the area of interest along the axis to select a region on the chromosome and click the zoom button below the axis
+ +If needed, reselect a given area to zoom in further to select only the required features
+ +Click the Genotype tab in the right hand pannel to switch to Genotype view then press the button highlighted by the red arrow in the screenshot
+ +In the resulting box that pops up, click desired samples (ctrl click to select multiple samples), the click "VCF lookup" button at the bottom of the pop up window. The selected samples will display in the bottom text box
+ +Genotypes for the selected samples in the selected genomic region are displayed in the right hand panel
+ + + + + + + + + + + + + + +Click on the "Search" button the left hand search pannel
+ +Enter the a list of feature names into the search text box input and press the search button
+AVRIG00246
+AVRIG00484
+
+
+If there are any matches for the feature name, the associated chromosomes containing the markers will be displayed below
+ +Import them into the view with the green plus button
+ +Click on the arrows to display the name of the feature
+ + + + + + + + + + + + + + +Overview of Key Steps To Visualise Results in Pretzel
+Project genetic map QTL into Cameor v1 genome assembly
+Integrate genes and KASP markers
+Identify sbm-1 gene with BLAST search
+Examine WGS genotypes around the sbm-1 gene to identify haplotype shared by resistant accessions
+Identify Multispecies Pulse 30K SNP array marker(s) that tag the haplotype
+Examine PGRs from the AGG using the identified marker(s) to identify PGRs likely carrying the PSbMV resistance allele
+Log in with the provided details on https://agg.plantinformatics.io/login:
+Email Address (username)
+UserStory1@AGG
+
+Password
+UserStory1
+
+Note
+Please use the provided login account so you have access to all the relevant data
+Navigate to the 'Explorer' tab and scroll down to the Datasets box find
+Field pea PSbMV QTL mapped in Kaspa x Yarrum
+
+and select
+Ps VI
+
+
+In the same 'Explorer' tab and Datasets box find
+Field pea genetic map SNP markers anchored to genome assembly (Cameor v1)
+
+and select
+chr1LG6
+
+
+
+In the centre view click on the title of the axis at the top
+Kaspa x Yarrum : Ps IV
+
+This will bring up the axis title menu on screen. Click the middle button to invert the orientation of the axis + +To close this box press the top right "x" button +
+On the left axis locate the 3 boxes and click on one of them + +An arrow should appear on left of the axis and click the arrow to bring the up name +
+Navigate to the 'View' tab, scroll down till you find the slider titled 'Outside Axis Margin' and reduce this value to increase the distance between axes in the visualisation
+Outside Axis Margin
+
+
+In the centre view click on the title of the right axis at the top to bring up the same menu from earlier. This time, click on the right most button to display features. Then close it using the same "x" button in the top right hand corner.
+ +In the 'Explorer' tab and Datasets box find
+Field pea KASP markers for PSbMV (Swisher 2020)
+
+and select
+chr1LG6
+
+
+Navigate to 'Search' tab, scroll down to DNA Sequence Blast Search and input the following text into the search box
+>AY423375.2
+GGAGAAAGAAACCGAGAGAGAGCAAAAATGGTTGTAGAAGAAACCCCCAAATCCATCATCACCGACGATCAAATCACAACAAACCCTAATCGCGTTATCGAAGACGACAACAATCTTGAAGAAGGAGAGATCCTCGATGAAGACGATTCCTCCGCCACTTCCAAACCCGTCGTCCACCAACCTCACCTCCTCGAGAATTCTTGGACTTTCTGGTTTGATACCCCCGCAGCAAAATCCAAACAAGCCGCTTGGGGTAGCTCAATGCGACCCATCTACACTTTCTCCACTGTTGAAGAGTTTTGGAGCATTTACAATAACATTCATCATCCTGGTAAGTTGGCTGTGGGAGCAGATTTCTATTGTTTCAAGCATAAAATTGAACCTAAATGGGAGGATCCCATTTGTGCTAATGGTGGGAAATGGACTGCGAACTATCCGAAGGGAAAATCTGATACCAGTTGGTTATACACGTTGTTGGCAATGATTGGAGAACAATTTGATCATGGAGATGAAATTTGCGGAGCGGTTGTGAATGTAAGGGGTAGGGCTGAGAAGATTTCTATTTGGACTAAGAATGCTTCAAATGAAGCTGCTCAGGTGAGCATTGGAAAACAGTGGAAGGAGTTTCTTGATTATAATGAGACCATGGGCTTTATATTTCATGATGATGCAAGGAAACTCGACAGAAATGCTAAAAACAAATATGTTGTGTGAACTGTATTGCGTTCTTACATGGTAGCAAACTAGCAATTGCATGAGATGCCTCTCCGATATTCAACATGTTGCTTAATGCTTTCTAAGCCTTTTAAATCTCGTATTGAGTAGTATTTCCAGATTTGTGTGCGGATAATCTTTTGACTGTAGACGATGTTTCATCAATAATAGAGTGATTTAGTCAAAAAAAAAA
+
+
+Scroll down even further and select
+Field pea reference genome (Cameor v1)
+
+
+This will then make the search button clickable and then press the search button.
+ +Scroll up and a new tab will appear in the DNA Sequence Blast Search titled "Blast output". Click the tab to display the results (they may take some time to arrive). Clicking the button at the top of the table will maximise the table.
+ +Full details of the BLAST results are shown in the table. Control the hits shown in the view by checking/unchecking the view column.
+ +Use Pretzel's zoom functions Zooming in and out of datasets to refine the view. Zoom in to the region around the sbm-1 gene.
+ + +In the Explorer tab, find
+Field pea reference genome annotation (Cameor v1)
+
+and select
+chr1LG6
+
+
+In the Explorer tab, find
+Field pea WGS genotype data for resistant and susceptible accessions
+
+and select
+chr1LG6
+
+
+If needed, refine the zoomed region to include the immediate area around the sbm-1 gene.
+Click and drag on the right-hand axis to select the region around the gene.
+ +In the right panel, click the Genotypes tab. Click and drag the resize bar to expand the width of the right panel.
+ +Click the icon at the right of the Genotypes to open the Genotypes dialog menu. While holding Shift, click on the first sample in the list, scroll down to the bottom and click on the last sample, to select all samples. Then click VCF Lookup.
+ + +Click on the ALT column in line with the KASP marker (the dark purple square in the 3rd column of the table). The cell should change to a green colour when it has been clicked. This will order the samples based on their allele at this position.
+ +In the Explorer tab, find
+Field pea AGG 30K genotype data sample
+
+and select
+chr1LG6
+
+
+In the Genotypes tab in the right panel, Pulse 30K positions are now indicated by orange squares in the second column of the table.
+ +Click on the axis title at the top of the right-hand axis and click the X to the left of the WGS dataset to remove it from the view.
+ +Click the icon at the right of the Genotypes to open the Genotypes dialog menu. While holding Shift, click on the first sample in the list, scroll down to the bottom and click on the last sample, to select all samples. Then click VCF Lookup.
+ + +Click on the ALT column in line with the Pulse 30K marker identified in the previous steps. The cell should change to a green colour when it has been clicked. This will order the samples based on their allele at this position.
+ + + + + + + + + + + + + + +In this User Story we will achieve the following in Prezel:
+Explore and compare Yellow Rust QTLs on chromosome 5A from Cheng at al. 2024 and Tong et al. 2024 (a meta study collecting QTLs from many other studies) defined in different versions of the wheat genome reference assembly (IWGSC RefSeq v1.0 and IWGSC RefSeq v2.1)
+Identify the Yr34/Yr48 region of 5AL based on results in Qureshi et al. 2018
+Define the Wheat Barley 40K SNP array haplotype carried by wheat accession WAWHT2046 (AGG accession: AGG91389WHEA), the original accession where Yr34 was discovered in Bariana et al. 2006, in the Yr34/Yr48 region
+Filter for AGG accessions matching the Yr34/Yr48 haplotype
+Log in with the provided details at https://agg.plantinformatics.io/login:
+Email Address (username)
+UserStory2@AGG
+
+Password
+UserStory2
+
+
+Note
+Please use the provided login account so you have access to all the relevant data
+Recent publications Cheng et al. 2024 and Tong et al. 2024 have reported Yellow Rust QTLs on chromosome 5A.
+Navigate to the 'Explorer' tab and find the dataset in the list, then click the '+' icon next to it to list the chromosomes for which data is available.
+Triticum aestivum - IWGSC_RefSeq_v1.0 - QTL - Yellow Rust - Cheng 2024
+
+This dataset only includes Yellow Rust QTLs on chromosome 5A. Load chr5A from this dataset by clicking the green '+' next to 'chr5A'.
+ +(Optional) Move the bottom panel to the right to better view the contents of the panel and create more vertical space in the visualisation (middle) panel.
+ +Navigate to the 'Explorer' tab and find the dataset
+Triticum aestivum - IWGSC_RefSeq_v2.1 - QTL - Yellow Rust - Tong 2024
+
+This dataset only includes Yellow Rust QTLs on chromosome 5A. Load Chr5A from this dataset.
+ +We can now see the QTLs displayed against IWGSC RefSeq v1.0 (intervals shown as bars against the axis) and IWGSC RefSeq v2.1 (peak markers shown as diamonds against the axis).
+To increase the size of the diamonds indicating the peak markers from the Tong 2024 QTLs, navigate to the 'View' tab and scroll down to the 'QTL: Diamond Size' slider and increase the value.
+ +(Optional) Still in the View tab, find the slider for 'Outside Axis Margin' and reduce the value to increase the distance between axis in the plot.
+ +Next we will load SNP positions on the Wheat Barley 40K SNP array in both assemblies, to be able to compare positions across the assemblies.
+Find the dataset
+Triticum aestivum - IWGSC_RefSeq_v1.0 - Markers - Wheat Barley 40k v1.1
+
+and load chr5A. Then find the dataset
+Triticum aestivum - IWGSC_RefSeq_v2.1 - Markers - Wheat Barley 40k v1.1
+
+and load Chr5A.
+ +Green lines are drawn between the positions of markers in each assembly.
+We will use two genetic maps covering the Yr34/Yr48 region published in Qureshi et al. 2018 to define our region of interest.
+Load the following datasets:
+Triticum aestivum - genetic map - Carnamah x WAWHT2046
+
+Triticum aestivum - genetic map - WAWHT2046 x AvocetS
+
+Triticum aestivum - Qureshi 2018 markers anchored to genome assembly IWGSC v2.1
+
+
+Zoom the axes to focus on the end of 5AL.
+ +Navigate to the Search tab and type
+Yr34
+
+into the Feature Search input box, then click Search. The location of Yr34 will be indicated by triangles in the two genetic maps loaded previously. Click the triangles to label them with 'Yr34'.
+ +Note
+We have now related QTLs defined in IWGSC RefSeq v1.0, IWGSC RefSeq v2.1, and two genetic maps. Based on the alignment of the genetic maps from Qureshi et al. 2018, it is highly likely that the QTL from Tong et al. 2024 is Yr34, while the QTL reported in Cheng et al. 2024 is likely to be a different QTL. Also note the re-arrangement at the end of chromosome 5A in the two genome assemblies.
+We can select the region in the IWGSC RefSeq v2.1 Chr5A axis around the QTL and navigate to the 'Features' tab in the right pan to examine more information about the QTL (directly loaded into Pretzel from the paper). We find this is a QTL from Joukhadar et al. 2020.
+ +While holding Ctrl, click and hold the mouse on any part of the WAWHT2046xAvocetS axis and drag it to the left of the IWGSC RefSeq v2.1 Chr5A axis so we can see the projection of both maps to the genome assembly at the same time.
+ +Now we have defined the region of interest - the end of chromosome 5AL - we will load the genotype data for the accession Yr34 was originally discovered in, WAWHT2046, genotyped on the Wheat Barley 40K SNP array by the AGG Strategic Partnership as AGG accession AGG91389WHEA1.
+In the 'Explorer' tab, locate the following dataset:
+ Triticum aestivum - IWGSC_RefSeq_v2.1 - WAWHT2046 genotype
+
+Only Chr5A has been included for the User Story; load it into the view, then "split" the Chr5A axis by clicking the axis title and then the third button on the right as shown in the screenshot. This opens the axis to display the features that have been loaded within the chromosome. If the diamond indicating the QTL location becomes too big, use the 'QTL: Diamond Size' slider to adjust accordingly.
+ +Click and drag on the IWGSC RefSeq v2.1 Chr5A axis to select it from around 700Mb to the end of the chromosome. In the right panel, select the Genotypes tab. Adjust the width of the right panel so you can see the list of SNPs (this may depend on the resolution of the screen you are using, for example).
+ +The right panel now displays the SNPs within the region we selected, with overlaps between datasets shown by the different colours.
+Now load the genotype data for WAWHT2046 by clicking the button indicated in the screenshot, selecting AGG91389WHEA1 in the list, then clicking 'VCF Lookup'. Scroll down to the bottom to see the haplotype at the end of the chromosome. Since WAWHT2046 is the original accession where Yr34 was discovered, we have now defined the Wheat Barley 40K SNP array haplotype corresponding to Yr34.
+ +In the 'Explorer' tab, locate the following dataset:
+ Triticum aestivum - IWGSC_RefSeq_v2.1 - Genotypes - AGG Filled-in Release 1
+
+This dataset includes all the AGG hexaploid wheat genotype data released so far (as of September 2024). Load Chr5A.
+ +Now open the Genotype data pop-up menu by clicking the button next to the 'Genotypes' tab, then select the tab marked 'Wheat_CSv2.1_VCF-AGG-imp-r1'. The list includes over 12,000 wheat accessions in the AGG. Here you can select accessions of interest, or select a random set of accessions. Then click 'VCF Lookup' to request and display the data.
+ +By clicking on the Ref/Alt columns against each SNP, we can sort the genotypes by their distance from a particular haplotype. Scroll to the end of 5AL and click the Ref/Alt pattern corresponding to WAWHT2046 (AGG91389WHEA1).
+ +Note
+We have identified two more accessions with the same haplotype at the end of chromosome 5A as WAWHT2046 (AGG91389WHEA1). Note the two markers named Yr34-Yr48-sunKASP109-F and Yr34-Yr48-sunKASP112-F. These are trait linked markers included on the Wheat Barley 40K SNP array based on SNPs reported in Qureshi et al. 2018. The Yr34-Yr48-sunKASP112-F is monomorphic and from this we can conclude it did not translate to a SNP marker for some reason. The other marker Yr34-Yr48-sunKASP109-F is polymorphic and from the final image below, we can see the AGG accessions matching the WAWHT2046 (AGG91389WHEA1) haplotype carry the alternate allele for this marker. However, we also find two accessions that carry the alternate allele but which have a different allele for the last two markers in the chromosome, AVRIG28079 and AVRIG28078.
+There are three main parts to this User Story:
+In the first part, we will learn how to navigate the wheat pan genome in Pretzel, and visualise some well known results such as the 5B/7B translocation in ArinaLrFor and SY Mattis as well as the Thinopyrum ponticum introgression in LongReach Lancer at the end of 3DL.
+In the second part, we will briefly summarise results from the last 20 years around yield on chromosome 7A. We will use Pretzel to integrate a range of QTL studies and ultimately identify the WAPO1 gene.
+Finally, we will combine the first two parts to:
+Details for all publications cited are listed in the references.
+Log in at https://agg.plantinformatics.io/login using the details below:
+Email Address (username)
+UserStory3@AGG
+
+Password
+UserStory3
+
+
+Note
+Please use the provided login account so you have access to all the relevant data
+After logging in, click Map Viewer in the top left to enter the Pretzel application.
+ +The 10 chromosome-scale assemblies from Walkowiak et al. 2020 have been curated and made available in AGG Pretzel: ArinaLrFor, CDC Landmark, CDC Stanley, Jagger, Julius, LongReach Lancer, Mace, Norin 61, SY Mattis and spelt wheat PI 190962.
+Metadata about the assemblies can be viewed by clicking on the respective Genome entry in the Pretzel Datasets Explorer. The metadata has been extracted from Walkowiak et al. 2020 and includes accession name, pedigree, growth habit, origin and EBI-ENA ID.
+ +The latest de novo gene annotations from White et al. 2024 (https://doi.org/10.1101/2024.01.09.574802) have been loaded into Pretzel.
+For example, we can load the PGSB annotation for CDC Landmark chromosome 2B by selecting chr2B
from the Triticum aestivum - CDC Landmark - Genes PGSBv2.1
dataset. We can click the axis title to open the axis title menu, split the axis, zoom in and select a region. The selected genes are shown in the Features tab in the right panel.
Markers from the Infinium Wheat Barley 40K v1.1 SNP array, which is being used to genotype the AGG wheat collection, have been mapped to each of the 10+ Wheat genomes using Brioche.
+The mapping of markers across the genomes enables chromosome-scale alignments to be visualised, and regions to be projected from one genome to another (similar to how regions were projected between IWGSC RefSeq v1.0 and IWGSC RefSeq v2.1 in User Story 2).
+Walkowiak et al. 2020 reported a striking translocation between 5B and 7B found in ArinaLrFor and SY Mattis. We can visualise this by loading the Wheat Barley 40K marker mapping in IWGSC RefSeq v2.1 for chromosomes 5B and 7B, and the same chromosomes in ArinaLrFor and/or SY Mattis.
+ +We can clearly see the long arm of 7B has joined with the long arm of 5B in ArinaLrFor. Rearranging the order of the chromosomes, we can also see how the short arm of 5B has joined to the short arm of 7B in ArinaLrFor. To re-order the axes, hold Ctrl then click on the axis and drag it.
+ +First, we load the Wheat Barley 40K marker mapping for chromosome 3D in both IWGSC RefSeq v2.1 and LongReach Lancer.
+ +Note that the LongReach Lancer chromosome 3D is longer than the Chinese Spring 3D.
+Next, we can load the PGSB gene annotation for LongReach Lancer chromosome 3D, split the axis to be able to view the features, then zoom in to the region. We can see a list of the genes by selecting the region and inspecting the Features tab in the right panel. We can reduce the threshold Pretzel uses to display features as histograms by increasing the Threshold slider in the Selected Axis Options section of the View tab in the left panel until features are displayed. Once features are displayed, they will be listed in the Features table when selected.
+ +Each of the 10+ Wheat genome assemblies can be searched by nucleotide sequence using Pretzel's BLAST search feature. Note that currently, searches can only be done against a single assembly at a time.
+Yield and yield-related QTLs have been reported on 7AL since at least 2006. Quarrie et al. 2006 reported a QTL in the centromere (Qyld.csdh.7AC) and on 7AL (Qyld.csdh.7AL), defined in an SSR-based genetic map from SQ1 x Chinese Spring.
+The SSR map for 7AL and SSR marker positions against IWGSC RefSeq v2.1 have been curated and loaded into Pretzel as User Story 3 - Wheat genetic map Chinese Spring x SQ1
and User Story 3 - Wheat SSRs anchored to IWGSC RefSeq v2.1
respectively. Viewing both of these datasets visualises the genetic to physical alignment of this map.
Ten years later, Su et al. 2016 reported a QTL for Thousand Kernel Weight (TKW) on 7AL. Keeble-Gagnère et al. 2018 also reported a similar yield QTL from a RAC785 x Kukri cross.
+In 2019, two studies (Kuzay et al. 2019 and Voss-Fels et al. 2019) reported QTLs for SNS and NRN in the same region.
+This set of QTLs have been curated in the dataset User Story 3 - Wheat yield QTLs on 7A
, defined as intervals against IWGSC RefSeq v2.1, based on curation of the marker intervals reported in the papers.
In Pretzel we can integrate all these results together and see how the interval was progressively narrowed. Ultimately, both Kuzay et al. 2019 and Voss-Fels et al. 2019 identified the wheat ortholog of rice gene APO (ABERRANT PANICLE ORGANIZATION), named WAPO1, as the likely gene influencing the yield phenotype.
+First, load the User Story 3 - Wheat yield QTLs on 7A
dataset. Then switch to the View tab, and under the Displayed Data section at the top, click the Trait tab. Then tick the box titled Show / Hide QTLs of all Traits.
Note: This brief section can only be reproduced on https://plantinformatics.io for now. Datasets from plantinformatics.io will be transfered to AGG Pretzel over the next 6 months. Those interested in studying wheat-rice syntenic alignments can sign up for a free account at https://plantinformatics.io/signup.
+Sign in to https://plantinformatics.io and load the following datasets: chromosomes 6 and 8 from Oryza_sativa_IRGSP-1.0_genes
and chr7A from Triticum_aestivum_IWGSC_RefSeq_v1.0_HC_genes
. Re-order the axes so that 7A is in the middle.
We have visualised the striking syntenic relationship between the wheat group 7 chromosomes and rice chromosomes 6 and 8. Next, we can search for the rice ABERRANT PANICLE ORGANIZATION (APO) gene ID, Os06g0665400. The search results identify the rice gene but also the orthologous wheat ID, TraesCS7A01G481600.
+ +We can use the WAPO1 gene sequence to locate the gene in the genome. Copy the sequence from the BLAST Use Case and follow the steps in that Use Case to search the IWGSC RefSeq v2.1 assembly. If searching with default parameters (as in the animation below), the BLAST results identify the 7A, 7B and 7D homoeologs of the gene. Remove the 7B and 7D chromosomes from the view.
+ +We can now zoom closer to the region to find that the gene falls exactly within the set of overlapping intervals, but outside the interval from Quarrie et al. 2006.
+ +Before we proceed, we will remove the SSR map from the view, split the IWGSC RefSeq v2.1 chromosome 7A axis and adjust the view to capture the complete region of interest.
+ +Note that we can view details about the QTLs by selecting the region and inspecting the Features tab in the right panel.
+ +A key result from Kuzay et al. 2019 and Voss-Fels et al. 2019 was that only two major haplotypes in the WAPO1 region of 7A, named HAP1 and HAP2, dominate modern hexaploid wheat, with HAP2 associated with increased grain yield. Kuzay et al. 2019 classified the haplotypes of the 10+ Wheat genomes and found that ArinaLrFor, CDC Landmark, Jagger, Julius, LongReach Lancer and SY Mattis carry HAP1 while Chinese Spring, CDC Stanley, Mace and Norin61 carry HAP2. The spelt accession included in the 10+ Wheat genomes carried a different haplotype.
+Using Brioche, a tool developed in the Australian Grains Genebank Strategic Partnership, we have in-silico genotyped the 10+ Wheat genome assemblies with the Wheat Barley 40K v1.1 SNP array. This dataset is available on AGG Pretzel as Triticum aestivum - IWGSC RefSeq v2.1 - Genotypes - 10 Wheat Genomes
.
Continuing from the above analysis where we have located the WAPO1 region, we can load this dataset, select the region around the gene, and load genotypes for the 10+ Wheat genomes. Clicking the ALT column, we can sort the accessions based on their allele at the selected SNP.
+ +We have reproduced the same haplotype classification as reported in Kuzay et al. 2019. This shows that the Wheat Barley 40K v1.1 SNP array is able to correctly differentiate the haplotypes reported in the paper, noting that exome sequence was used in the 2019 study.
+We have so far identified the WAPO1 region on chromosome 7AL through the integration of a number of yield QTLs over almost 20 years of research. We have reproduced the haplotype analysis reported in Kuzay et al. 2019, confirming the Wheat Barley 40K v1.1 SNP array detects the main haplotypes found in modern wheat.
+We can now use Pretzel to directly relate these results to the AGG. We will achieve two main things: 1) Confirm that most wheat accessions in the AGG carry one of the two dominant haplotypes (HAP1 and HAP2) in the WAPO1 region; 2) Identify rarer haplotypes carried by PGR accessions in the AGG.
+Continuing from the previous step where we visualised genotypes for the 10 Wheat genomes, we will now bring in genotypes for wheat PGR accessions in the AGG. In the Dataset Explorer, add chromosome 7A from the Triticum aestivum - IWGSC_RefSeq_v2.1 - Genotypes - AGG Filled-in Release 1
dataset. In the Genotypes menu there are now two tabs - the first - Wheat_pangenomes_IWGSC_v2.1
- is the 10 Wheat genomes, the second - Wheat_CSv2.1_VCF-AGG-imp-r1
- is the AGG data. Select the second tab then select some accessions from the list. To select multiple accessions in a row, click on the first accession in the list, then while holding Shift, click an accession further down the list to select all accessions in between. In this example we select the first 150 or so accessions. If you have accessions of interest, you could search for them and add those to the list. Clicking VCF Lookup will request the genotype data for these accessions and add them to the genotype table.
Clicking the ALT allele for each of the 5 SNPs that make up the haplotype will order accessions based on their distance from HAP1 (all 5 ALT alleles). Scrolling to the right we can see most of the AGG accessions carry either HAP1 or HAP2 (all REF alleles). In between we can clearly see accessions carrying rarer haplotypes, including the haplotype carried by the spelt accession. We have achieved our initial aim of finding accessions in the AGG carrying rare haplotypes in the WAPO1 region.
+ +International Wheat Genome Sequencing Consortium (IWGSC). Shifting the limits in wheat research and breeding using a fully annotated reference genome. Science. 2018 Aug 17;361(6403):eaar7191. doi: 10.1126/science.aar7191. Epub 2018 Aug 16. PMID: 30115783.
+Keeble-Gagnère G, Rigault P, Tibbits J, Pasam R, Hayden M, Forrest K, Frenkel Z, Korol A, Huang BE, Cavanagh C, Taylor J, Abrouk M, Sharpe A, Konkin D, Sourdille P, Darrier B, Choulet F, Bernard A, Rochfort S, Dimech A, Watson-Haigh N, Baumann U, Eckermann P, Fleury D, Juhasz A, Boisvert S, Nolin MA, Doležel J, Šimková H, Toegelová H, Šafář J, Luo MC, Câmara F, Pfeifer M, Isdale D, Nyström-Persson J, Iwgsc, Koo DH, Tinning M, Cui D, Ru Z, Appels R. Optical and physical mapping with local finishing enables megabase-scale resolution of agronomically important regions in the wheat genome. Genome Biol. 2018 Aug 17;19(1):112. doi: 10.1186/s13059-018-1475-4. PMID: 30115128; PMCID: PMC6097218.
+Kuzay S, Xu Y, Zhang J, Katz A, Pearce S, Su Z, Fraser M, Anderson JA, Brown-Guedira G, DeWitt N, Peters Haugrud A, Faris JD, Akhunov E, Bai G, Dubcovsky J. Identification of a candidate gene for a QTL for spikelet number per spike on wheat chromosome arm 7AL by high-resolution genetic mapping. Theor Appl Genet. 2019 Sep;132(9):2689-2705. doi: 10.1007/s00122-019-03382-5. Epub 2019 Jun 28. PMID: 31254024; PMCID: PMC6708044.
+Quarrie S, Pekic Quarrie S, Radosevic R, Rancic D, Kaminska A, Barnes JD, Leverington M, Ceoloni C, Dodig D. Dissecting a wheat QTL for yield present in a range of environments: from the QTL to candidate genes. J Exp Bot. 2006;57(11):2627-37. doi: 10.1093/jxb/erl026. Epub 2006 Jul 10. PMID: 16831847.
+Su, Z., Jin, S., Lu, Y. et al. Single nucleotide polymorphism tightly linked to a major QTL on chromosome 7A for both kernel length and kernel weight in wheat. Mol Breeding 36, 15 (2016). https://doi.org/10.1007/s11032-016-0436-4
+Voss-Fels KP, Keeble-Gagnère G, Hickey LT, Tibbits J, Nagornyy S, Hayden MJ, Pasam RK, Kant S, Friedt W, Snowdon RJ, Appels R, Wittkop B. High-resolution mapping of rachis nodes per rachis, a critical determinant of grain yield components in wheat. Theor Appl Genet. 2019 Sep;132(9):2707-2719. doi: 10.1007/s00122-019-03383-4. Epub 2019 Jun 28. PMID: 31254025.
+Walkowiak S, Gao L, Monat C, Haberer G, Kassa MT, Brinton J, Ramirez-Gonzalez RH, Kolodziej MC, Delorean E, Thambugala D, Klymiuk V, Byrns B, Gundlach H, Bandi V, Siri JN, Nilsen K, Aquino C, Himmelbach A, Copetti D, Ban T, Venturini L, Bevan M, Clavijo B, Koo DH, Ens J, Wiebe K, N'Diaye A, Fritz AK, Gutwin C, Fiebig A, Fosker C, Fu BX, Accinelli GG, Gardner KA, Fradgley N, Gutierrez-Gonzalez J, Halstead-Nussloch G, Hatakeyama M, Koh CS, Deek J, Costamagna AC, Fobert P, Heavens D, Kanamori H, Kawaura K, Kobayashi F, Krasileva K, Kuo T, McKenzie N, Murata K, Nabeka Y, Paape T, Padmarasu S, Percival-Alwyn L, Kagale S, Scholz U, Sese J, Juliana P, Singh R, Shimizu-Inatsugi R, Swarbreck D, Cockram J, Budak H, Tameshige T, Tanaka T, Tsuji H, Wright J, Wu J, Steuernagel B, Small I, Cloutier S, Keeble-Gagnère G, Muehlbauer G, Tibbets J, Nasuda S, Melonek J, Hucl PJ, Sharpe AG, Clark M, Legg E, Bharti A, Langridge P, Hall A, Uauy C, Mascher M, Krattinger SG, Handa H, Shimizu KK, Distelfeld A, Chalmers K, Keller B, Mayer KFX, Poland J, Stein N, McCartney CA, Spannagl M, Wicker T, Pozniak CJ. Multiple wheat genomes reveal global variation in modern breeding. Nature. 2020 Dec;588(7837):277-283. doi: 10.1038/s41586-020-2961-x. Epub 2020 Nov 25. PMID: 33239791; PMCID: PMC7759465.
+Benjamen White, Thomas Lux, Rachel Rusholme-Pilcher, Angéla Juhász, Gemy Kaithakottil, Susan Duncan, James Simmonds, Hannah Rees, Jonathan Wright, Josh Colmer, Sabrina Ward, Ryan Joynson, Benedict Coombes, Naomi Irish, Suzanne Henderson, Tom Barker, Helen Chapman, Leah Catchpole, Karim Gharbi, Utpal Bose, Moeko Okada, Hirokazu Handa, Shuhei Nasuda, Kentaro K. Shimizu, Heidrun Gundlach, Daniel Lang, Guy Naamati, Erik J. Legg, Arvind K. Bharti, Michelle L. Colgrave, Wilfried Haerty, Cristobal Uauy, David Swarbreck, Philippa Borrill, Jesse A. Poland, Simon G. Krattinger, Nils Stein, Klaus F.X. Mayer, Curtis Pozniak, 10+ Wheat Genome Project, Manuel Spannagl, Anthony Hall. De novo annotation of the wheat pan-genome reveals complexity and diversity of the hexaploid wheat pan-transcriptome. bioRxiv 2024.01.09.574802; doi: https://doi.org/10.1101/2024.01.09.574802
+Zhu T, Wang L, Rimbert H, Rodriguez JC, Deal KR, De Oliveira R, Choulet F, Keeble-Gagnère G, Tibbits J, Rogers J, Eversole K, Appels R, Gu YQ, Mascher M, Dvorak J, Luo MC. Optical maps refine the bread wheat Triticum aestivum cv. Chinese Spring genome assembly. Plant J. 2021 Jul;107(1):303-314. doi: 10.1111/tpj.15289. Epub 2021 May 16. PMID: 33893684; PMCID: PMC8360199.
+ + + + + + + + + + + + + +