Copyright © 1999-2019 by Genome
Research Limited
This document describes release v18.0.0 of Artemis a DNA sequence
viewer and sequence annotation tool.
Artemis is
free software; you can redistribute it and/or modify it under the terms of the
GNU General Public License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This
program is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You
should have received a copy of the GNU General Public License along with this
program; if not, write to the Free Software Foundation, Inc., 59 Temple Place,
Suite 330, Boston, MA 02111-1307 USA
For the full text of the license see
the section called Copyright
Notice in Chapter 1 .
Table of Contents
Chapter 1. Introduction to Artemis
Getting and Installing Artemis
Installation Instructions for UNIX and GNU/Linux
Installation Instructions for MacOSX
Installation Instructions for Windows
Sequence and Annotation File Formats
EMBL/Genbank Feature Qualifiers
Distribution Conditions and Acknowledgments
Running Artemis on UNIX and GNU/Linux Systems
UNIX Command Line Arguments for Artemis
-Dbam1=pathToFile1 -Dbam2=pathToFile2
-Dchado="hostname:port/database?username"
Running
Artemis on Macintosh Systems
Running Artemis on Windows Systems
Chapter 3. The Artemis Main Window
Overview of the Entry Edit Window
A breakdown of the main Artemis edit window
Amino Acids Of Selected Features
PIR Database Of Selected Features
Codon Usage of Selected Features
Select All Features in Non-matching Regions
Features Overlapping Selection
Features Missing Required Qualifiers ...
Find Or Replace Qualifier Text
Qualifier(s) of Selected Feature
Automatically Create Gene Names
Reverse And Complement Selected Contig
Features From Non-matching Regions
Mark Open Reading Frames In Range ...
Searching
and Using Local Sequence Databases for Mac OSX
GC Content (%) With 2.5 SD Cutoff
Cumulative AT Skew and Cumulative GC Skew
Intrinsic Codon Deviation Index
Changing the Selection from a View Window
Other Mouse Controlled Functions
Changing the Selection from the Feature List
Other Mouse Controlled Functions
Validation Checks For All File Types
Chapter 4. Project File Manager
Using the Project File Manager
Chapter 5. Secure Shell (SSH) Plugin To Artemis
Using Putty to Set Up A Tunnel
Chapter 6.
Artemis Configuration Options
List of Tables
3-1.
IUB Base Codes
Artemis is a DNA sequence viewer and annotation tool that
allows visualisation of sequence features and the results of analyses within
the context of the sequence, and its six-frame translation. Artemis is written
in Java, reads EMBL or GENBANK format sequences and feature tables, and can
work on sequences of any size.
On
Unix and GNU/Linux systems, given an EMBL accession number Artemis also can
read an entry directly from the EBI using Dbfetch. This feature is still
experimental, but copes well with straightforward entries (see the section called Open from EBI - Dbfetch ... in Chapter 2 ).
For more information on Artemis go
to the
Artemis web pages.
Artemis
will run on any machine that has a recent version of Java. This version of
Artemis requires Java 9 at least and preferably Java 11. See the section called Getting and Installing Artemis for details on how to get
Java.
The
most up to date version of Artemis is always available from the Artemis
web pages.
It’s also available bundled with Java from Bioconda for Mac OSX or UNIX based systems.
Installing Java
Before installing Artemis you will need to make sure you
have Java installed. The previous v17.0.1 version of
Artemis required Java 1.8 to run. All subsequent recent versions from v18.0.0
onwards require a minimum of Java 9 and preferably Java 11.
The licensing for Java has recently changed and Oracle now
offers two flavours – one free GPL licensed GA OpenJDK and one commercial build
that requires a subscription for production use. The default option should be
the open JDK, but this choice may be dependent upon your organisation so check
with your administrator if necessary.
There are a number of ways to install the OpenJDK Java. The
easiest is via the AdoptOpenJDK
web site - just select the OpenJDK version and Hotspot options for the relevant
platform and you’re done.
Other options include Homebrew for Mac OSX or apt on Linux.
The current Java 11 version can always be obtained from https://jdk.java.net/archive/.
Select the relevant download link for your operating system, from the Build section of the page. You will
generally need administrator privileges for your machine, to successfully
install Java.
The download files are either .tar.gz
or .zip
archives, dependent on operating system. Double-clicking
on the downloaded file will usually extract the contents. They may also be
extracted on the command line using
$ tar xvf openjdk-11*_bin.tar.gz
or
$ unzip
openjdk-11*_bin.zip
The uncompressed folder will
be named similar to jdk-VersionNumber.jdk, e.g. jdk-11.0.1.jdk.
Some good advice on
installation can be found in the following articles:
For Ubuntu: https://linuxize.com/post/install-java-on-ubuntu-18-04/
https://dzone.com/articles/installing-openjdk-11-on-ubuntu-1804-for-real
For Mac OS X: https://stackoverflow.com/questions/52524112/how-do-i-install-java-11-on-mac-osx-allowing-version-switching
For Windows: See the first
answer in https://stackoverflow.com/questions/52511778/how-to-install-openjdk-11-on-windows
Typically:
·
For
Linux, copy the uncompressed folder into /usr/lib/jvm. Alternatively, use apt or similar, for
example:
sudo apt update
sudo apt install
default-jdk
java -version
·
For
Macs, you will need to copy the uncompressed folder to your /Library/Java/JavaVirtualMachines/ folder since this is the standard
location for Java installs, and add the following to your profile (e.g. .bashrc file):
export
JAVA_HOME=”/Library/Java/JavaVirtualMachines/jdk-11.0.1.jdk/Contents/Home”
export
PATH="$JAVA_HOME/bin:$PATH"
·
For
Windows, make a new “Java” folder under C:\Program Files and copy the uncompressed
folder into it. Now Create a new JAVA_HOME environment variable using the
Windows Control Panel “System” program. Set it to the path of your newly
installed Java folder, e.g. C:\Program
Files\Java\jdk-11.0.1.jdk. Now edit the PATH environment variable
value and add %JAVA_HOME%\bin: to the start of it. You should now be able to
bring up a DOS cmd window and run “java -version” in it, which should show
the correct version, e.g. Java 11.
Change
directory to the directory you wish to install the Artemis software in. We will
use ~/ in this example and
in the next chapter.
Uncompress and untar the artemis-unix-release-{version}.tar.gz or artemis-unix-release-{version}.zip file. On
UNIX the command for the v18.0.0 release would be:
tar zxf artemis-unix-release-18.0.0.tar.gz
This
will create a directory called ~/artemis which will contain all the
files necessary for running Artemis and associated tools.
For
instructions on how to run Artemis on UNIX and GNU/Linux once the archive is
unpacked see the section
called Running Artemis on UNIX and GNU/Linux Systems in Chapter 2 .
For MacOSX
users, an archive artemis-macosx-release-{version}.dmg.gz disk
image is provided. Your Mac may uncompress this
automatically on download. If not it can be uncompressed by
double-clicking on it or by using gunzip, e.g. for the v18.0.0 release:
gunzip
artemis-macosx-release-18.0.0.dmg.gz
Alternatively,
try the StuffIt Expander app. Double-click on any
file ending in ".gz" and StuffIt Expander will be launched to uncompress
that file.
The
uncompressed disk image file artemis-macosx-release-{version}.dmg
can be mounted by double clicking on it. The mounted image, "Artemis_Tools", can then be opened and the software
contents displayed by clicking on it.
There’s
also an artemis-macosx-chado-release-{version}.dmg disk image
that will start up Artemis with a Chado connection
window displayed, if you wish to work connected to a Chado
database. This is installed in exactly the same way.
For
instructions on how to run Artemis on Mac OSX once it is unpacked see the section called Running Artemis
on Macintosh Systems.
On
Windows systems, installing Artemis is as simple as downloading the artemis-windows-release-{version}.zip
file to an appropriate place (such as the desktop or the Programs folder). Unzip the file using WinZip or equivalent. The
unzipped folder will contain the Artemis tool set executable .jar files.
For
instructions on how to run Artemis on Windows once it is unpacked see the section called Running Artemis
on Windows Systems.
Artemis
reads in the common sequence and annotation file formats. As larger data sets
become more common it is now possible to index some of these formats (FASTA and
GFF3) to speed up and improve the performance of Artemis. Artemis can read the
following sequence and annotation file formats. As discussed in the next
section these can be read individually or as a combination of different
annotation files being read in and overlaid on the same sequence.
• EMBL format.
• GenBank format.
•
GFF3 format. The file can contain both the sequence and annotation or the GFF
can just be the feature annotation
and be read in as a seperate entry and overlaid onto
another entry containing the sequence.
•
FASTA nucleotide sequence files can be one of the following:
•
Single FASTA sequence.
•
Multiple FASTA sequence. The sequences are concatenated
together when opened in
• Indexed
FASTA files can be read in. The files are indexed using SAMtools:
samtools
faidx ref.fasta
A
drop down menu of the sequences in the Entry toolbar (see the
section called A breakdown of the main Artemis edit window in Chapter 3) at the top can then be used to select the sequence to view.
•
Indexed GFF3 format. This can be read in and overlaid onto
an indexed FASTA file. The indexed GFF3 file contains the feature annotations.
To index the GFF first sort and bgzip the file and
then use tabix with "-p gff"
option (see the tabix manual):
(grep
^"#" in.gff; grep -v ^"#" in.gff | sort -k1,1 -k4,4n) | bgzip
>
sorted.gff.gz;
tabix
-p gff sorted.gff.gz
A
drop down menu of the sequences in the Entry toolbar (see the section called A breakdown of
the main Artemis edit window in Chapter 3) at the top can then used to select the sequence to view. Using indexed FASTA and
indexed GFF files improves the memory management and enables large genomes to
be viewed. Note that as it is indexed the sequence and annotation are read-only
and cannot be edited. When there are many contigs to select from it can be
easier to display the one of interest by typing the name into the drop down
list.
• The output
of MSPcrunch. MSPcrunch
must be run with the -x or -d flags.
• The output
of blastall
version 2.2.2 or better. blastall must be
run with the -m 8 flag which generates one line of information per HSP.
Note that currently Artemis displays each Blast HSP as a separate feature
rather than displaying each BLAST hit as a feature.
Here
are some general concepts about Artemis that may make the rest of this manual
clearer.
An "entry"
in Artemis-speak is not necessarily a complete EMBL or GENBANK entry. In most
places in this manual when we refer to an entry we mean a file that contains
just the feature table lines
(the FT lines) of an
EMBL/GENBANK entry (see the
section called "Tab" Files or "Table" Files).
After loading a sequence and opening an entry edit window (see the section called Open ... in Chapter 2)
it is then possible to overlay many feature tables (see the section called Read an Entry..
in Chapter 3). Each of these feature table files
is called an entry by Artemis and it's features are kept separate from those of
other entries.
This
meaning of the word "entry" is used by most of the items in the File
menu (see the section called
The File Menu in Chapter 3) and by the items in the
Entry menu (see the section
called The Entries Menu in Chapter 3).
A
"feature" in an EMBL or Genbank file is a
region of DNA that has been annotated with a key/type (see the section called EMBL/Genbank Feature Keys) and zero or more qualifiers (see the section called
EMBL/Genbank Feature Qualifiers). In an EMBL or Genbank formated file the features of a piece of DNA are listed in the
feature table section (see the
section called "Tab" Files or "Table" Files).
All
EMBL and Genbank features have exactly one
"key" assigned to them. The key is the type of the feature. Examples
include CDS (a CoDing
Sequence), intron and misc_feature (MISCellaneous
feature).
The
EBI
has
a list of all
possible feature keys.
The
qualifiers of a feature in an EMBL or Genbank file
are the notes and extra information about the feature. For example an exon feature might have a /gene="ratC"
qualifier, meaning that the exon feature is part of a gene named ratC.
The
EBI
has
a list of all
possible feature qualifiers.
An EMBL or Genbank file that only contains a feature table (just FT lines, no sequence or header lines)
is called a "table" file, or sometimes just a "tab" file
because the often has a name like "somefile.tab".
All
entries in Artemis are considered to be "active" or
"inactive". The overview, DNA view and feature list parts of the main
window will only display features from active entries. To find out how to set
the active and inactive entries see the
section called The Entries Menu in Chapter 3.
Many
actions (such as creating features) require an entry to be identified as the
source or destination for the action. Some actions, such as "Move Selected
Features To ..." in the edit menu, will explicitly ask for
an entry, but some assume that the action refers to a
"default entry" that was previously set by the user.
The default entry can be set by
using the "Set Default Entry ..." menu item in the Entries menu (see the section called Set Default Entry
in Chapter 3) or by using the entry buttons (see the section called The Entry Button
Line in Chapter 3).
The
term "segment" in the context of a CDS feature means
"exon". We use the term "segment", because non-CDS features
(such as misc_feature) can have exon-like parts too,
but the term "exon" would be inappropriate in that case.
In
common with applications like word processors and graphics programs, Artemis
allows the user to "select" the objects that the program will act on.
The objects to act on in Artemis are features, feature segments or bases. If a
feature segment is added to the selection, the feature that contains the
segment is implicitly added as well. The current selection can be changed with the
Select Menu (see the section called The Select Menu
in Chapter 3) or using the mouse (see the section called Changing the
Selection from a View Window in Chapter 3)
and the section called
Changing the Selection from the Feature List in Chapter 3).
Each feature
displayed in Artemis can be given a colour. The available colours are set in
the options file (see Chapter 6) and are assigned to a feature by
adding a /colour
qualifier (see the section
called Selected Features in Editor in Chapter 3). Currently there are two ways of specifying feature
colours. The first way uses a single number. For example red is colour
2, so adding /colour=2 as a feature qualifier will make that feature red. The second way
is to specify the red, green and blue components of the colour. Each of the
components can take values from 0 to 255, with 255 being the most intense. For
example /colour=255 0 0 is another way to give a feature the colour red. If no /colour qualifier
is set for a feature a default colour is used (the default colours are also
specified in the options file).
We
welcome contributions to Artemis, bug reports from users and suggestions for
new features. An email discussion list has been set up for this purpose. To
join, send a message to 'artemis-users-join@sanger.ac.uk' with 'subscribe artemis-users' in the body (not the subject). Announcements
will also be sent to this list.
Artemis
may be freely distributed under the terms of the GNU
General Public License. See the section called Copyright Notice
for the full text of the license.
The
development of Artemis is funded by the Wellcome Trust through its support of the Pathogen Informatics Group at The
Sanger Institute.
GNU
GENERAL PUBLIC LICENSE
Version
2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59
Temple Place, Suite 330, Boston, MA 02111-1307 USA
Everyone is permitted to copy and distribute verbatim copies of
this license document, but changing it is not allowed.
Preamble
The
licenses for most software are designed to take away your freedom to share and
change it. By contrast, the GNU General Public License is intended to guarantee
your freedom to share and change free software--to make sure the software is
free for all its users. This General Public License applies to most of the Free
Software Foundation's software and to any other program whose authors commit to
using it. (Some other Free Software Foundation software is covered by the GNU
Library General Public License instead.) You can apply it to your programs,
too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you have the
freedom to distribute copies of free software (and charge for this service if
you wish), that you receive source code or can get it if you want it, that you
can change the software or use pieces of it in new free programs; and that you
know you can do these things.
To
protect your rights, we need to make restrictions that forbid anyone to deny
you these rights or to ask you to surrender the rights. These restrictions
translate to certain responsibilities for you if you distribute copies of the
software, or if you modify it.
For
example, if you distribute copies of such a program, whether gratis or for a
fee, you must give the recipients all the rights that you have. You must make
sure that they, too, receive or can get the source code. And you must show them
these terms so they know their rights.
We protect
your rights with two steps: (1) copyright the software, and
(2)
offer you this
license which gives you legal permission to copy, distribute and/or modify the
software.
Also,
for each author's protection and ours, we want to make certain that everyone
understands that there is no warranty for this free software. If the software
is modified by someone else and passed on, we want its recipients to know that
what they have is not the original, so that any problems introduced by others
will not reflect on the original authors' reputations.
Finally, any
free program is threatened constantly by software
patents. We wish to avoid the danger that redistributors of a
free program will individually obtain patent licenses, in effect making the
program proprietary. To prevent this, we have made it clear that any patent
must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for
copying, distribution and modification follow.
GNU
GENERAL PUBLIC LICENSE
TERMS
AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This
License applies to any program or other work which contains a notice placed by
the copyright holder saying it may be distributed under the terms of this
General Public License. The "Program", below, refers to any such
program or work, and a "work based on the Program" means either the
Program or any derivative work under copyright law: that is to say, a work
containing the Program or a portion of it, either verbatim or with
modifications and/or translated into another language. (Hereinafter,
translation is included without limitation in the term
"modification".) Each licensee is addressed as "you".
Activities
other than copying, distribution and modification are not covered by this
License; they are outside its scope. The act of running the Program is not
restricted, and the output from the Program is covered only if its contents
constitute a work based on the Program (independent of having been made by
running the Program). Whether that is true depends on what the Program does.
1. You
may copy and distribute verbatim copies of the Program's source code as you
receive it, in any medium, provided that you conspicuously and appropriately
publish on each copy an appropriate copyright notice and disclaimer of warranty;
keep intact all the notices that refer to this License and to the absence of
any warranty; and give any other recipients of the Program a copy of this
License along with the Program.
You may charge a fee for the physical act of transferring a
copy, and you may at your option offer warranty protection in exchange for a
fee.
2. You
may modify your copy or copies of the Program or any portion of it, thus
forming a work based on the Program, and copy and distribute such modifications
or work under the terms of Section 1 above, provided that you also meet all of
these conditions:
a)
You must cause
the modified files to carry prominent notices stating that you changed the
files and the date of any change.
b) You
must cause any work that you distribute or publish, that in whole or in part
contains or is derived from the Program or any part thereof, to be licensed as
a whole at no charge to all third parties under the terms of this License.
c) If
the modified program normally reads commands interactively when run, you must
cause it, when started running for such interactive use in the most ordinary
way, to print or display an announcement including an appropriate copyright
notice and a notice that there is no warranty (or else, saying that you provide
a warranty) and that users may redistribute the program under these conditions,
and telling the user how to view a copy of this License. (Exception: if the
Program itself is interactive but does not normally print such an announcement,
your work based on the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Program, and can be
reasonably considered independent and separate works in themselves, then this License,
and its terms, do not apply to those sections when you distribute them as
separate works. But when you distribute the same sections as part of a whole
which is a work based
on the Program, the
distribution of the whole must be on the terms of
this License, whose permissions for
other licensees extend to the
entire whole, and thus to each and every
part regardless of who wrote it.
Thus, it is
not the intent of this section to claim rights or contest your rights to work
written entirely by you; rather, the intent is to exercise the right to control
the distribution of derivative or collective works based on the Program.
In addition,
mere aggregation of another work not based on the Program with the Program (or
with a work based on the Program) on a volume of a storage or distribution
medium does not bring the other work under the scope of this License.
3.
You may copy
and distribute the Program (or a work based on it, under Section 2) in object
code or executable form under the terms of Sections 1 and 2 above provided that
you also do one of the following:
a)
Accompany it
with the complete corresponding machine-readable source code, which must be
distributed under the terms of Sections
1 and 2 above
on a medium customarily used for software interchange; or,
b) Accompany
it with a written offer, valid for at least three
years, to give
any third party, for a charge no more than your cost of physically performing
source distribution, a complete machine-readable copy of the corresponding
source code, to be distributed under the terms of Sections 1 and 2 above on a
medium customarily used for software interchange; or,
c) Accompany
it with the information you received as to the offer to distribute
corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the
program in object code or executable form with such an offer, in accord with
Subsection b above.)
The source
code for a work means the preferred form of the work for making modifications
to it. For an executable work, complete source code means all the source code
for all modules it contains, plus any associated interface definition files,
plus the scripts used to control compilation and installation of the
executable. However, as a special exception, the source code distributed need
not include anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the operating
system on which the executable runs, unless that component itself accompanies
the executable.
If
distribution of executable or object code is made by offering access to copy
from a designated place, then offering equivalent access to copy the source
code from the same place counts as distribution of the source code, even though
third parties are not compelled to copy the source along with the object code.
4. You
may not copy, modify, sublicense, or distribute the Program except as expressly
provided under this License. Any attempt otherwise to copy, modify, sublicense
or distribute the Program is void, and will automatically terminate your rights
under this License. However, parties who have received copies, or rights, from
you under this License will not have their licenses terminated so long as such
parties remain in full compliance.
5. You
are not required to accept this License, since you have not signed it. However,
nothing else grants you permission to modify or distribute the Program or its
derivative works. These actions are prohibited by law if you do not accept this
License. Therefore, by modifying or distributing the Program (or any work based
on the Program), you indicate your acceptance of this License to do so, and all
its terms and conditions for copying, distributing or modifying the Program or
works based on it.
6. Each
time you redistribute the Program (or any work based on the Program), the
recipient automatically receives a license from the original licensor to copy,
distribute or modify the Program subject to these terms and conditions. You may
not impose any further restrictions on the recipients' exercise of the rights
granted herein. You are not responsible for enforcing compliance by third
parties to this License.
7.
If, as a
consequence of a court judgment or allegation of patent infringement or for any
other reason (not limited to patent issues), conditions are imposed on you
(whether by court order, agreement or otherwise) that contradict the conditions
of this License, they do not excuse you from the conditions of this License. If
you cannot distribute so as to satisfy simultaneously your obligations under
this License and any other pertinent obligations, then as a consequence you may
not distribute the Program at all. For example, if a patent license would not
permit royalty-free redistribution of the Program by all those who receive
copies directly or indirectly through you, then the only way you could satisfy
both it and this License would be to refrain entirely from distribution of the
Program.
If any portion
of this section is held invalid or unenforceable under any particular
circumstance, the balance of the section is intended to apply and the section
as a whole is intended to apply in other circumstances.
It is not the
purpose of this section to induce you to infringe any patents or other property
right claims or to contest validity of any such claims; this section has the
sole purpose of protecting the integrity of the free software distribution
system, which is implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed through that
system in reliance on consistent application of that system; it is up to the
author/donor to decide if he or she is willing to distribute software through
any other system and a licensee cannot impose that choice.
This section is intended to make thoroughly clear what is
believed to be a consequence of the rest of this License.
8.
If the
distribution and/or use of the Program is restricted in certain countries
either by patents or by copyrighted interfaces, the original copyright holder
who places the Program under this License may add an explicit geographical
distribution limitation excluding those countries, so that distribution is
permitted only in or among countries not thus excluded. In such case, this License
incorporates the limitation as if written in the body of this License.
9. The
Free Software Foundation may publish revised and/or new versions of the General
Public License from time to time. Such new versions will be similar in spirit
to the present version, but may differ in detail to address new problems or
concerns.
Each version
is given a distinguishing version number. If the Program specifies a version
number of this License which applies to it and "any later version",
you have the option of following the terms and conditions either of that
version or of any later version published by the Free Software Foundation. If
the Program does not specify a version number of this License, you may choose
any version ever published by the Free Software Foundation.
10. If
you wish to incorporate parts of the Program into other free programs whose
distribution conditions are different, write to the author to ask for
permission. For software which is copyrighted by the Free Software Foundation,
write to the Free Software Foundation; we sometimes make exceptions for this.
Our decision will be guided by the two goals of preserving the free status of
all derivatives of our free software and of promoting the sharing and reuse of
software generally.
11. BECAUSE
THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM,
TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN
WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS
IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
12. IN
NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY
COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE
PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR
INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA
BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER
OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
On
Unix and GNU/Linux the easiest way to run the program is to run the script
called art in the Artemis installation directory (see the section called Getting and
Installing Artemis in Chapter 1), like this:
artemis/art
If
all goes well you will be presented with a small window with three menus. See The Artemis Launch Window
to find out what to do next.
Alternatively
you can start Artemis with the name of a sequence file or embl
file eg:
artemis/art artemis/etc/c1215.embl
Or if you have a
sequence file and extra feature table files you can read them all with a
command like this (the example file c1215.blastn.tab is the result of a BLASTN
search against EMBL which has been converted to feature table format):
artemis/art artemis/etc/c1215.embl + artemis/etc/c1215.blastn.tab
Note
that any number of feature files can be read by listing them after the plus
sign. The "+" must be surrounded by spaces.
See
the section called UNIX Command
Line Arguments for Artemis for a list of the other
possible arguments. Also to see a summary of the options type:
As
well as the listing file names on the command line, the following switches are
available to UNIX users:
This
option instructs Artemis to read an extra file of options after reading the
standard options. (See the
section called The Options File in Chapter 6 for more about the Artemis options file.)
For example -options ./new_options
will instruct Artemis to read new_options
in the current directory as an options file.
Use
-Xmsn
to specify the initial size, in bytes, of the memory allocation pool. This
value must be a multiple of 1024 greater than 1MB. Append the letter k or K to
indicate kilobytes, or m or M to indicate megabytes.
Use
-Xmxn
to specify the maximum size, in bytes, of the memory allocation pool. This value
must a multiple of 1024 greater than 2MB. Append the letter k or K to indicate
kilobytes, or m or M to indicate megabytes.
If
this is set to false then warning messages are kept to a minimum.
This
sets the base position that Artemis opens at, e.g. 10000.
This
can be used to open userplots from the command line.
The paths are comma separated to open multiple plots (-Duserplot='/pathToFile/userPlot1,/pathToFile/userPlot2').
This
is the same as the above userplot option except that
the log transform of the data is plotted.
This can be used to
open BAM/CRAM files and/or VCF/BCF files (see the
section called Read BAM / CRAM / VCF ... in Chapter 3
for more about the using these file types). This can take a
path name to a file or an HTTP address. Multiple files can be comma separated.
The
following will open BAM/CRAM files in separate panels (using -Dbam[1,2,3...]):
art -Dbam1=fileA.bam -Dbam2=fileB.bam
Multiple
BAM/CRAM panels can be opened using the bamClone flag
this is used with the -Dbam flag:
art -Dbam='/pathToFile/file1.bam,/pathToFile/file2.bam' -DbamClone=n
(where
n is an integer greater than 1). All BAM/CRAM files are then shown in each
panel.
Show
SNP marks in BAM/CRAM panels.
Automatically
open SNP plots for BAM/CRAM files that are opened.
Automatically
open coverage plots for BAM/CRAM files that are opened.
This
is used to get Artemis to look for the database. The address of the database
(hostname, port and name) can be conveniently included (e.g. -Dchado="genedb-db.sanger.ac.uk:5432/snapshot?genedb_ro") and these details are then the
default database address in the popup login window.
For
a read only chado connection -Dread_only
is specified on the command line (e.g. art -Dchado="genedb-db.sanger.ac.uk:5432/snapshot?genedb_ro" -Dread_only).
Hide/show
forward frame lines.
Hide/show
reverse frame lines.
On MacOSX machines Artemis can be started by double clicking
on the Artemis icon. The icon can be added to the dock by dragging it from a
'Finder' window and dropping it onto the position in the dock you want it. In
addition sequence files (with gff,gff3,embl,EMBL,genbank,gbk,fasta,fa,seq file
name extensions) can be dragged and dropped on to the Artemis application image
to open them up.
To
change the memory allocated to Artemis on MacOSX, set
the value in the file Info.plist in the directory Artemis.app/Contents. Towards the bottom of the file you
will see these lines:
<array>
<string>-mx2g</string>
Changing
the value after -mx will change the max memory used by
Artemis. The default is 2Gb.
Similarly, to start Artemis
with a particular default Chado database connection you can add a <string>-Dchado=”connection string”</string> line to the above section (see -Dchado="hostname:port/database?username").
On Windows, Artemis can
be started by double clicking on the artemis.jar icon, and similarly for the
other tools.
If it fails to start, then it’s
likely that either Java is not installed properly, or another program has
hijacked the .jar file association (this could happen if a .jar was previously
opened with Notepad for example, and then that association saved as the
default). To check that Java is installed, run up a DOS window (Type cmd in the run
menu) and then in the DOS window type java -version – this should display
the correct Java version number.
To fix an incorrect file association,
https://stackoverflow.com/questions/7325676/java-can-run-jar-from-cmd-but-not-by-double-clicking provides
some helpful information.
A backstop solution that always
works is to create a text file in Notepad [or an alias] with the following line
in it:
java -jar
artemis.jar
Save this file as artemis.bat in the same folder as
the jar file (i.e. change the default .txt file extension to .bat before
saving). Then just double click on that file instead of the .jar.
The same can be done for the other tools, e.g. for BamView create a bamview.bat containing: java –jar bamview.jar
This
is the first window that opens when you start Artemis. The menus at the top of
this window allow you to read a new sequence or embl
entry.
This
opens up the Project File Manager which can be used to facilitate launching of
groups of files (annotation, userplot, BAM, CRAM, VCF)
with a particular sequence. See Chapter
4.
Selecting
this shows the files and directories that are in the directory Artemis is
launched from. The user home directory and the current working directories are
shown and can be navigated.
This
opens a window displaying a local file manager at the top and login options to
access a remote file system via Secure Shell (SSH). When the login details are
typed in and 'Connect' pressed the bottom half of the window will display the
other (remote) file system. See Chapter
5 to find out how to use this and how to set up the
connection.
If
you select this menu item a file requester will be displayed which allows you
to open a flat file containing an entry. If the file you select is successfully
read a new window will open, which shows the
sequence and features for the entry. See Chapter 3 to find out how to use the main
window.
The functions will ask the user
for an accession number and then will attempt to read it directly from the EBI using Dbfetch. If all goes well you will be presented with an
view/edit window (see Chapter 3).
This
menu item will close all windows and then exit the program
Choosing this menu item will
discard the current options settings and then re-read the options file. Note
that changing the font size in the file and then selecting this menu item will
only change the font size for new windows, not existing windows. Currently some
options are unaffected by this menu item. See the section called Options File
Format in Chapter 6 for more information about
options.
This
menu item will toggle "direct editing" option. It is off by default
because it can have surprising results unless the user is expecting it. See the section on "Direct
Editing" in Chapter 3 for more detail about this.
These options make
all the NCBI Genetic Codes available.
The default setting is the Standard Code. This setting effects the display of
start codons (see the section
called Start Codons in Chapter 3) and the
"Suspicious Start Codons ..." feature filter (see the section called Suspicious
Start Codons ... in Chapter 3).
This
is an advanced option that can be used to turn off warning message. This
options is displayed if the java property (black_belt_mode)
is specified on opening up Artemis, i.e. art -Dblack_belt_mode=yes.
When
this option is on and the "One Line Per Entry" is on (see the section called One Line per Entry in Chapter 3) the line that the
active entry is on will be highlighted in yellow.
Show
the log of informational messages from Artemis. Currently the log window is
only used on UNIX and GNU/Linux systems to show the output of external
programs. This menu item is only available when running Artemis on UNIX or
GNU/Linux systems. The logging is controlled by log4j.
The log4j.properties file (etc/log4j.properties in the source distribution)
sets the level of logging. This can be used to send the logging information to
other places such as a file.
Hide the log of
informational messages. This menu item is only available when running Artemis
on UNIX or GNU/Linux systems.
This window is the main editing
and viewing window. See the section
called Open ... in Chapter 2 or the section called Open from EBI - Dbfetch ... in Chapter 2 to find out how to read an entry (and hence open one of these windows).
The
following images show a breakdown of the main Artemis edit window.
1.
2.
3.
4.
5.
6.
Key:
1. The menus
for the main window (described later in this chapter).
2.
A one line summary of the current
selection (see the
section called The
Select Menu and the section called The Selection in
Chapter 1 for more).
3.
This line contains one button for
each entry that has been loaded. These buttons allow the user to set the
default entry (see the
section called The
Default Entry in Chapter 1 )
and to set the active entries (see the section called The Active Entries in Chapter 1 ).
For more detail on operating the buttons see the section called The Entry Button Line .
4.
This shows an overview of the
sequence and the features from the active entries. (see the section called The Overview and
DNA Views in Chapter 3).
5.
This is called the "DNA
view" to distinguish it from the overview, but in fact it operates in a
very similar way. (see the
section called The Overview and DNA Views in Chapter 3).
6.
A textual summary of the active
features. (See the section called
The Feature List in Chapter 3).
Most
of the items in this menu are used to read and write entries and parts of
entries, the exceptions are Clone and Close.
This
will open the file manager, or if it is already open will bring it to the
foreground. Entries can be dragged from the file manager into the Artemis main
window and dropped. When dropped the entry is then read in and displayed.
Read
an entry (see the section called The "Entry" in Chapter 1 ),
but keep it separate from the others. A new button will be created on the entry
button line for the new entry. The new entry will be marked as active (see the section called The Active Entries in Chapter 1 )
and will be the new default entry (see the
section called The Default Entry in Chapter 1).
See
the
section called Sequence and
Annotation File Formats in Chapter 1 .
This function only reads the feature section of the input file - the sequence
(if any) is ignored.
Read
the features from an entry (see the section called The "Entry" in Chapter 1 )
chosen by the user and then insert them into the entry selected by the user.
Artemis can read in and visualise BAM, CRAM, VCF and BCF
files. These files need to be indexed as described below. Some examples can be
found here.
BAM files need to be sorted and indexed using SAMtools. The index file
should be in the same directory as the BAM file. This provides an integrated BamView panel in Artemis, displaying sequence alignment mappings to
a reference sequence. Multiple BAM files can be loaded in from here either by
selecting each file individually or by selecting a file of path names to the
BAM files. The BAM files can be read from a local file system or remotely from
an HTTP server.
BamView will look to match
the length of the sequence in Artemis with the reference sequence lengths in
the BAM file header. It will display a warning when it opens if it finds a
matching reference sequence (from these lengths) and changes to displaying the
reads for that. The reference sequence for the mapped reads can be changed
manually in the drop down list in the toolbar at the top of the BamView.
In
the case when the reference sequences are concatenated together into one (e.g.
in a multiple FASTA sequence) and the sequence length matches the sum of
sequence lengths given in the header of the BAM, Artemis will try to match the
names (e.g. locus_tag or label) of the features (e.g.
contig or chromosome) against the reference sequence names in the BAM. It will
then adjust the read positions accordingly using the start position of the
feature.
When open the BamView can be configured via the popup menu which is
activated by clicking on the BamView panel. The
'View' menu allows the reads to be displayed in a number of views: stack,
strand-stack, paired-stack, inferred size and coverage.
In
Artemis the BamView display can be used to calculate
the number of reads mapped to the regions covered by selected features. In
addition the reads per kilobase per million mapped reads (RPKM) values for selected
features can be calculated on the fly. Note this calculation can take a while
to complete.
CRAM files can be
loaded in a similar fashion to BAMs. They can be created, sorted and indexed
using SAMtools.
Variant Call Format
(VCF) files can also be read. The VCF
files need to be compressed and indexed using bgzip
and tabix respectively (see the tabix manual and download
page). The compressed file gets read in (e.g. file.vcf.gz) and
below are the commands for generating this from a VCF file:
bgzip
file.vcf
tabix
-p vcf file.vcf.gz
Alternatively
a Binary VCF (BCF) can be
indexed with BCFtools and read into Artemis or ACT.
As
with reading in multiple BAM/CRAM files, it is possible to read a number of
(compressed and indexed) VCF files by listing their full paths in a single
file. They then get displayed in separate rows in the VCF panel.
For single base changes the
colour represents the base it is being changed to, i.e. T black, G blue, A
green, C red. There are options available to filter the display by the
different types of variants. Right clicking on the VCF panel will display a
pop-up menu in which there is a 'Filter...' menu. This opens a window with
check
boxes for a number of variant types and properties that can be used to filter
on. This can be used to show and hide synonymous, non-synonymous, deletion
(grey), insertion (magenta), and multiple allele (orange line with a circle at
the top) variants. In this window there is a check box to hide the variants
that do not overlap CDS features. There is an option to mark variants that
introduce stop codons (into the CDS features) with a circle in the middle of
the line that represents the variant. There are also options to filter the
variants by various properties such as their quality score (QUAL) or their
depth across the samples (DP).
Placing
the mouse over a vertical line shows an overview of the variation as a tooltip.
Also right clicking over a line then gives an extra option in the pop-up menu
to show the details for that variation in a separate window. There are also
alternative colouring schemes. It is possible to colour the variants by whether
they are synonymous or non-synonymous or by their quality score (the lower the
quality the more faded the variant appears).
There
is an option to provide an overview of the variant types (e.g. synonymous,
non-synonymous, insertion, deletion) for selected features. Also, filtered data
can be exported in VCF format, or the reconstructed DNA sequences of variants
can be exported in FASTA format for selected features or regions for further
analyses. These sequences can be used as input for multiple sequence alignment
tools.
Save
the default entry to the file it came from, unless the entry has been given a
new name, in which case the entry is saved to a file with that name. If the
entry has no name, Artemis will prompt the user for a new name. [shortcut key:
S]
This
item will do the same as "Save Default Entry" for the chosen entry.
This
sub-menu contains the less frequently used save functions.
Ask
for the name of file to save the given entry to. The name of entry (as
displayed in the entry button line) will change to the new name.
This
does the same as "Save An Entry As -> New File ...", but will
write the features and sequence of the entry in EMBL format. Note that
currently the header of a GENBANK entry can't be converted to the
equivalent EMBL header (it will be discarded instead).
This
does the same as "Save An Entry As -> New File ...", but will
write the features and sequence of the entry in GENBANK format. Note that
currently the header of a EMBL entry can't be converted to the equivalent
GENBANK header (it will be discarded instead).
This
saves a file in Sequin
table format which is used by Sequin.