bmc_jvenn.tex 17.8 KB
Newer Older
Jerome Mariette's avatar
Jerome Mariette committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
%% BioMed_Central_Tex_Template_v1.06
%%                                      %
%  bmc_article.tex            ver: 1.06 %
%                                       %

%%IMPORTANT: do not delete the first line of this template
%%It must be present to enable the BMC Submission system to
%%recognise this template!!

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%                                     %%
%%  LaTeX template for BioMed Central  %%
%%     journal article submissions     %%
%%                                     %%
%%          <8 June 2012>              %%
%%                                     %%
%%                                     %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%                                                                 %%
%% For instructions on how to fill out this Tex template           %%
%% document please refer to Readme.html and the instructions for   %%
%% authors page on the biomed central website                      %%
%% http://www.biomedcentral.com/info/authors/                      %%
%%                                                                 %%
%% Please do not use \input{...} to include other tex files.       %%
%% Submit your LaTeX manuscript as one .tex document.              %%
%%                                                                 %%
%% All additional figures and files should be attached             %%
%% separately and not embedded in the \TeX\ document itself.       %%
%%                                                                 %%
%% BioMed Central currently use the MikTex distribution of         %%
%% TeX for Windows) of TeX and LaTeX.  This is available from      %%
%% http://www.miktex.org                                           %%
%%                                                                 %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%% additional documentclass options:
%  [doublespacing]
%  [linenumbers]   - put the line numbers on margins

%%% loading packages, author definitions

%\documentclass[twocolumn]{bmcart}% uncomment this for twocolumn layout and comment line below
\documentclass{bmcart}

%%% Load packages
%\usepackage{amsthm,amsmath}
%\RequirePackage{natbib}
%\RequirePackage{hyperref}
\usepackage[utf8]{inputenc} %unicode support
%\usepackage[applemac]{inputenc} %applemac support if unicode package fails
%\usepackage[latin1]{inputenc} %UNIX support if unicode package fails


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%                                             %%
%%  If you wish to display your graphics for   %%
%%  your own use using includegraphic or       %%
%%  includegraphics, then comment out the      %%
%%  following two lines of code.               %%
%%  NB: These line *must* be included when     %%
%%  submitting to BMC.                         %%
%%  All figure files must be submitted as      %%
%%  separate graphics through the BMC          %%
%%  submission process, not included in the    %%
%%  submitted article.                         %%
%%                                             %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


\def\includegraphic{}
\def\includegraphics{}



%%% Put your definitions there:
\startlocaldefs
\endlocaldefs


%%% Begin ...
\begin{document}

%%% Start of article front matter
\begin{frontmatter}

\begin{fmbox}
\dochead{Research}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%                                          %%
%% Enter the title of your article here     %%
%%                                          %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

Jerome Mariette's avatar
Jerome Mariette committed
99
\title{jvenn: an interactive venn diagram viewer.}
Jerome Mariette's avatar
Jerome Mariette committed
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%                                          %%
%% Enter the authors here                   %%
%%                                          %%
%% Specify information, if available,       %%
%% in the form:                             %%
%%   <key>={<id1>,<id2>}                    %%
%%   <key>=                                 %%
%% Comment or delete the keys which are     %%
%% not used. Repeat \author command as much %%
%% as required.                             %%
%%                                          %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\author[
   addressref={aff1},                   % id's of addresses, e.g. {aff1,aff2}
   corref={aff1},                       % id of corresponding address, if any
   noteref={n1},                        % id's of article notes, if any
   email={jane.e.doe@cambridge.co.uk}   % email address
]{\inits{JE}\fnm{Jane E} \snm{Doe}}
\author[
   addressref={aff1,aff2},
   email={john.RS.Smith@cambridge.co.uk}
]{\inits{JRS}\fnm{John RS} \snm{Smith}}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%                                          %%
%% Enter the authors' addresses here        %%
%%                                          %%
%% Repeat \address commands as much as      %%
%% required.                                %%
%%                                          %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\address[id=aff1]{%                           % unique id
  \orgname{Department of Zoology, Cambridge}, % university, etc
  \street{Waterloo Road},                     %
  %\postcode{}                                % post or zip code
  \city{London},                              % city
  \cny{UK}                                    % country
}
\address[id=aff2]{%
  \orgname{Marine Ecology Department, Institute of Marine Sciences Kiel},
  \street{D\"{u}sternbrooker Weg 20},
  \postcode{24105}
  \city{Kiel},
  \cny{Germany}
}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%                                          %%
%% Enter short notes here                   %%
%%                                          %%
%% Short notes will be after addresses      %%
%% on first page.                           %%
%%                                          %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{artnotes}
%\note{Sample of title note}     % note to the article
\note[id=n1]{Equal contributor} % note, connected to author
\end{artnotes}

\end{fmbox}% comment this for two column layout

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%                                          %%
%% The Abstract begins here                 %%
%%                                          %%
%% Please refer to the Instructions for     %%
%% authors on http://www.biomedcentral.com  %%
%% and include the section headings         %%
%% accordingly for your article type.       %%
%%                                          %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{abstractbox}

\begin{abstract} % abstract
Jerome Mariette's avatar
Jerome Mariette committed
180
\parttitle{Background} %if any
Jerome Mariette's avatar
Jerome Mariette committed
181

Jerome Mariette's avatar
Jerome Mariette committed
182

Jerome Mariette's avatar
Jerome Mariette committed
183
184
\parttitle{Results} %if any

Jerome Mariette's avatar
text v1    
Jerome Mariette committed
185
186
187
...
Currently there is no software that provides such features.

Jerome Mariette's avatar
Jerome Mariette committed
188
\parttitle{Conclusions} %if any
Jerome Mariette's avatar
text v1    
Jerome Mariette committed
189
conclusions ....
Jerome Mariette's avatar
Jerome Mariette committed
190

Jerome Mariette's avatar
Jerome Mariette committed
191
192
193
194
195
196
197
198
199
200
201
\end{abstract}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%                                          %%
%% The keywords begin here                  %%
%%                                          %%
%% Put each keyword in separate \kwd{}.     %%
%%                                          %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{keyword}
Jerome Mariette's avatar
Jerome Mariette committed
202
203
204
205
\kwd{venn}
\kwd{edward}
\kwd{diagram}
\kwd{jquery}
Jerome Mariette's avatar
Jerome Mariette committed
206
\kwd{javascript}
Jerome Mariette's avatar
Jerome Mariette committed
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
\end{keyword}

% MSC classifications codes, if any
%\begin{keyword}[class=AMS]
%\kwd[Primary ]{}
%\kwd{}
%\kwd[; secondary ]{}
%\end{keyword}

\end{abstractbox}
%
%\end{fmbox}% uncomment this for twcolumn layout

\end{frontmatter}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%                                          %%
%% The Main Body begins here                %%
%%                                          %%
%% Please refer to the instructions for     %%
%% authors on:                              %%
%% http://www.biomedcentral.com/info/authors%%
%% and include the section headings         %%
%% accordingly for your article type.       %%
%%                                          %%
%% See the Results and Discussion section   %%
%% for details on how to create sub-sections%%
%%                                          %%
%% use \cite{...} to cite references        %%
%%  \cite{koon} and                         %%
%%  \cite{oreg,khar,zvai,xjon,schn,pond}    %%
%%  \nocite{smith,marg,hunn,advi,koha,mouse}%%
%%                                          %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%%%%%%%%%%%%%%%%%%%%%%%% start of article main body
% <put your article body there>

%%%%%%%%%%%%%%%%
%% Background %%
%%

Jerome Mariette's avatar
Jerome Mariette committed
249
\section*{Background}
Jerome Mariette's avatar
Jerome Mariette committed
250

Jerome Mariette's avatar
Jerome Mariette committed
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
The massive amounts of data generated by biological projects makes the analysis of such projects more and 
more difficult. In such a context, it is important to provide researchers with effective visualization 
tools to explore and extract relevant knowledge from these data sets. Data analysis often leads to the 
production of biological identifiers (gene names, operational taxonomic unit, ...) for which it is 
interesting to know intersections between samples. One of the most popular visualization chart is the 
Venn diagrams \cite{Venn1880} wich allows to identify shared and unshared identifiers providing an insight 
on the similarities between the data sets.

Several Venn diagram applications are availble. Some of them such as BioVenn \cite{Hulsen2008} or venny 
\cite{venny} provides their users a web application with text areas as inputs to enter identifiers.
Where the first one outputs a three lists area-proportional diagram, the second one offers a four lists 
diagram without any respect of area proportions. Canvasxpress \cite{canvasxpress} and the Google Chart API
\cite{googleAPI}, meanwhile, are javascript libraries including Venn diagram features that can easily be 
embedded in any WEB site. These libraries can only have as inputs numbers corresponding to each intersections
and cannot perform any calculations to otain them.

We intruduce jvenn a javascript library aiming to be part of rich WEB environments helping scientists to analyse 
their data, such does already existing tools as jbrowse \cite{Westesson01032013}, Cytoscape-Web \cite{Lopes2010}, 
and jHeatmap \cite{DeuPons2014}. Jvenn handles up to 6 lists venn diagram, can display Edwards-Venn diagram
Jerome Mariette's avatar
text v1    
Jerome Mariette committed
270
271
\cite{Edwards2004}, can easily be embeded within any web site, allows to provide inputs data in three different formats 
(list/number/list+number), allows to export the diagram to png and permits to overload the callback 
Jerome Mariette's avatar
Jerome Mariette committed
272
273
function to control users interactions. jvenn has already been used in several scientific publications to display 
sets and their overlapping areas \cite{Bianchia2013, Aravindraja2013}. 
Jerome Mariette's avatar
Jerome Mariette committed
274

Jerome Mariette's avatar
Jerome Mariette committed
275

Jerome Mariette's avatar
Jerome Mariette committed
276
\section*{Implementation}
Jerome Mariette's avatar
Jerome Mariette committed
277

Jerome Mariette's avatar
text v1    
Jerome Mariette committed
278
279
280
281
282
283
jvenn is a javascript library written as a jQuery plugin \cite{jquery} and can be embeded within any WEB applications 
by referencing the javascript file from an HTML page. For researchers who want to produce a Venn diagram from their 
identifiers, jvenn is also available as a WEB application at http://bioinfo.genotoul.fr/index.php?id=116. A full 
documentation to insert the plugin within a WEB application is included in the software package that can be downloaded 
from https://mulcyber.toulouse.inra.fr/plugins/mediawiki/wiki/venny/index.php/Accueil.

Jerome Mariette's avatar
Jerome Mariette committed
284

Jerome Mariette's avatar
Jerome Mariette committed
285
\section*{Results and Discussion}
Jerome Mariette's avatar
Jerome Mariette committed
286

Jerome Mariette's avatar
text v1    
Jerome Mariette committed
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
The jvenn output is a chart of two to six areas in which each area represents one of the identifiers set define as input. 
The numbers of each overlaps are displayed and are clickable by the user to access the identifiers list belonging to the 
intersection. In order to ease overlaps understanding, when the user is over an intersection number, jvenn overlights the 
pointed classes and blurs the other ones.

The library provides an option to define the data inputs: \textit{series}. The library accepts three different input formats. 
In case the \textit{series} are a list of value, the plugin will compute itself the overlaps between lists. The \textit{series} 
can also define the number to display for each intersections or can be defined as a mix of the first two formats. 
The resulting display is created with the help of the javascript canvas object which allows to export the chart as a png file. 
This last feature can be disabled in order to hide the exporting button from the user by setting the \textit{exporting} option 
to \textit{false}.

jvenn handles up to six classes, what leads to display sixty three overlap numbers. Displaying and interacting with such a chart
can be bulky and difficult. In such a case, jvenn propose a switch button panel which allows to activate or disactivate classes. 
The selected overlap number is then displayed and can be clicked just like the other ones. jvenn also provides the Edwards-Venn
display (Fig. 2) available by setting the \textit{displayType} option to \textit{edwards}. This display gives a different 
graphical representation of the classes which can be clearer whith a 6 classes diagram.
The WEB application creator can also overload the callback function defining the click on an overlap number. This can be done 
by defining the \textit{fnClickCallback} parameter. The overloading function has access to the \textit{this.listnames} and
\textit{this.list} variables allowing the developer to control the users interactions with the jvenn plugin. This feature can
be disabled by setting the \textit{disableClick} option to \textit{true}.

As example, we produced two venn diagrams representing six samples SRR068049, SRR06805, SRR068051, SRR068052, SRR068053 and 
SRR068054 corresponding to sets of Operational Taxonomic Units observed under different conditions. Fig. 1 shows intersections
between five of them using the Venn diagram display. In Fig. 2, jvenn overlights the intersection between three samples of the 
six ones used to create the Edwards-Venn diagram.

Jerome Mariette's avatar
Jerome Mariette committed
314

Jerome Mariette's avatar
Jerome Mariette committed
315
316
\section*{Conclusions}

Jerome Mariette's avatar
text v1    
Jerome Mariette committed
317
318
319
jvenn is an easy-to-use library aiming to generate Venn and Edwards-Venn diagrams from lists of identifiers or from
computed numbers. Its implementation as a javascript library allows whoever who have WEB programming skills to embed 
it within its WEB application without any dependancies. jvenn is already embeded within nG6 \cite{Mariette2012}, 
Jerome Mariette's avatar
Jerome Mariette committed
320
RNAbrowse \cite{Mariette} and WallProtDB \cite{SanClemente} WEB applications.
Jerome Mariette's avatar
text v1    
Jerome Mariette committed
321

Jerome Mariette's avatar
Jerome Mariette committed
322
\section*{Availability and requirements}
Jerome Mariette's avatar
Jerome Mariette committed
323

Jerome Mariette's avatar
text v1    
Jerome Mariette committed
324
325
326
327
jvenn is freely available under the GNU General Public License (GPL) at 
https://mulcyber.toulouse.inra.fr/plugins/mediawiki/wiki/venny/index.php/Accueil webcite. Some examples and a full documentation 
can be found on the downloadable archive. A running version is accessible at http://bioinfo.genotoul.fr/index.php?id=116.

Jerome Mariette's avatar
Jerome Mariette committed
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%                                          %%
%% Backmatter begins here                   %%
%%                                          %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{backmatter}

\section*{Competing interests}
  The authors declare that they have no competing interests.

\section*{Author's contributions}
    Text for this section \ldots

\section*{Acknowledgements}
Jerome Mariette's avatar
Jerome Mariette committed
343
344
345
We would like to acknowledge all our users for providing us useful feedback on
the system and for pointing out features worth developing.

Jerome Mariette's avatar
Jerome Mariette committed
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%                  The Bibliography                       %%
%%                                                         %%
%%  Bmc_mathpys.bst  will be used to                       %%
%%  create a .BBL file for submission.                     %%
%%  After submission of the .TEX file,                     %%
%%  you will be prompted to submit your .BBL file.         %%
%%                                                         %%
%%                                                         %%
%%  Note that the displayed Bibliography will not          %%
%%  necessarily be rendered by Latex exactly as specified  %%
%%  in the online Instructions for Authors.                %%
%%                                                         %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% if your bibliography is in bibtex format, use those commands:
\bibliographystyle{bmc-mathphys} % Style BST file
Jerome Mariette's avatar
Jerome Mariette committed
363
\bibliography{bmc_jvenn}      % Bibliography file (usually '*.bib' )
Jerome Mariette's avatar
Jerome Mariette committed
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385

% or include bibliography directly:
% \begin{thebibliography}
% \bibitem{b1}
% \end{thebibliography}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%                               %%
%% Figures                       %%
%%                               %%
%% NB: this is for captions and  %%
%% Titles. All graphics must be  %%
%% submitted separately and NOT  %%
%% included in the Tex document  %%
%%                               %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%%
%% Do not use \listoffigures as most will included as separate files

\section*{Figures}
  \begin{figure}[h!]
Jerome Mariette's avatar
Jerome Mariette committed
386
387
388
389
390
  \caption{\csentence{A five lists Venn diagram.}
      A Venn diagram displaying overlaps between five different biological samples. When 
      the user click on a number, the function called is the one specified by the application
      developper. On the top-right, the exporting module allows the user to download its diagram
      as a png file.}
Jerome Mariette's avatar
Jerome Mariette committed
391
392
393
      \end{figure}

\begin{figure}[h!]
Jerome Mariette's avatar
Jerome Mariette committed
394
395
396
397
398
  \caption{\csentence{A six lists Edwards-Venn diagram.}
      When the user is pointing a specific number, the lists involved in the intersection
      are overlighted and the other ones are blurred. In this example, the user pointed the
      intersection between the samples SRR068049, SRR068051 and SRR068052 which contains
      twelve different identifiers.}
Jerome Mariette's avatar
Jerome Mariette committed
399
400
401
402
      \end{figure}

\end{backmatter}
\end{document}