Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
47 commits
Select commit Hold shift + click to select a range
579900f
Add the corresponding genomes to the segments
smesseim May 6, 2016
32715b4
Intuitive zooming on graph
May 7, 2016
83537cb
Fixed mouse leave document bug
May 7, 2016
34a3f24
Changed zoom on scroll function
May 7, 2016
42e4ac8
PhyloGeneticTreeParser tests
SamuelSital May 8, 2016
6dbd4b3
Temporary fix PhyloGenticTreeParser
SamuelSital May 9, 2016
fabed39
Custom string iterator
SamuelSital May 9, 2016
3f657d9
Remove .fasta extension from genome name
smesseim May 9, 2016
c4ff56c
Merge remote-tracking branch 'origin/feature/phyloparser' into featur…
smesseim May 9, 2016
4bc0ed6
Working parser
SamuelSital May 9, 2016
4a14784
Clean up parser
SamuelSital May 9, 2016
5cd0d28
Add JSON serializer for treenode
smesseim May 9, 2016
0901cd5
Merge remote-tracking branch 'origin/feature/phyloparser' into featur…
smesseim May 9, 2016
614a298
fix test failures
smesseim May 9, 2016
0a00450
Merge pull request #50 from ProgrammingLife2016/feature/phyloparser-json
smesseim May 10, 2016
10cd412
Merge remote-tracking branch 'origin/feature/phyloparser' into featur…
smesseim May 10, 2016
0db671b
Fix front end
SamuelSital May 11, 2016
0d47478
Fix merge conflict
SamuelSital May 11, 2016
0fa2671
Add pan/zoom widget and send zoom level to server
SamuelSital May 11, 2016
65353f0
Merge conflict fix
SamuelSital May 11, 2016
2fdf1e9
Load data after zoom level ajax request
SamuelSital May 11, 2016
40d42ec
Phylognetic tree in IFRAME
SamuelSital May 12, 2016
56aa40a
Fixed CONTENT_LENGTH_MISMATCH error
May 12, 2016
eda98c1
Add semantic zooming
smesseim May 12, 2016
26d7bdd
Add all gfa's to LFS
smesseim May 12, 2016
1b4d02a
Hide irrelevant links
smesseim May 12, 2016
73de374
Added ajax request on panning/zooming with minx and miny
May 12, 2016
2dfd47f
Fix Phylogenetic tree in div
SamuelSital May 12, 2016
9f31e76
Merge branch 'feature/phyloparser' of https://github.com/ProgrammingL…
SamuelSital May 12, 2016
2ce1a5b
Modified ajax pan/zoom request
May 12, 2016
f570e89
Merge remote-tracking branch 'origin/feature/phyloparser' into featur…
smesseim May 12, 2016
c907ce1
Fix failing test
smesseim May 12, 2016
a16e7de
Add bounding for semantic zooming
smesseim May 12, 2016
2009d4b
Merge to get the new testing package structure
raviautar May 13, 2016
034ab16
Added new package for phyloparser to maintain structure
raviautar May 13, 2016
6879fc8
Fix positioning phylotree
SamuelSital May 13, 2016
8f45f19
Merge branch 'feature/phyloparser' of https://github.com/ProgrammingL…
SamuelSital May 13, 2016
4e5e4d0
Added missing tests for phyloparser
raviautar May 13, 2016
83f6cc9
Merge remote-tracking branch 'origin/feature/phyloparser' into featur…
smesseim May 13, 2016
f04c50d
Added few tests for phylotree
raviautar May 13, 2016
2749b72
Merge to get newest test classes
raviautar May 13, 2016
77c68d6
Completed all test for phylotree
raviautar May 13, 2016
e42a252
Added test case to test PositionHandler
raviautar May 13, 2016
b47ee10
Remove orphan nodes
smesseim May 13, 2016
998f79f
Merge pull request #54 from ProgrammingLife2016/testing/phylotreeparser
smesseim May 13, 2016
d2d275d
Merge branch 'feature/phylosemanticism' of github.com:ProgrammingLife…
smesseim May 13, 2016
4d7a284
Merge pull request #55 from ProgrammingLife2016/testing/segments
smesseim May 13, 2016
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Temporary fix PhyloGenticTreeParser
  • Loading branch information
SamuelSital committed May 9, 2016
commit 6dbd4b30705468b82863799dabb3e0cc072e20d0
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import java.util.ArrayList;
import java.util.List;
import static java.util.stream.Collectors.*;

/**
* Class for representing a node in the phylogenetic tree.
Expand Down Expand Up @@ -104,6 +105,9 @@ public List<TreeNode> getChildren() {
*/
@Override
public String toString() {
return String.format("BaseTreeNode{id= %d, weight= %d, children= %d, parent = %d}", id, weight, children, parent);
return "[" + this.getId() + " " + this.getWeight()
+ " {" + children.stream()
.map(Object::toString)
.collect(joining(", ")) + "}]";
}
}
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
package io.github.programminglife2016.pl1_2016.parser;

import io.github.programminglife2016.pl1_2016.Launcher;

import java.io.ByteArrayInputStream;
import java.io.InputStream;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
Expand All @@ -15,9 +19,7 @@ public class PhyloGeneticTreeParser implements Parser {
@Override
public JsonSerializable parse(InputStream inputStream) {
String s = inputStreamToString(inputStream);
StringTokenizer tokenizer = new StringTokenizer(s, "(:,);", true);
TreeNode root = constructTree(null, tokenizer);
root = root.getChildren().get(0);
TreeNode root = parseTokensFromString(s);
return null;
}

Expand All @@ -28,6 +30,17 @@ private String inputStreamToString(InputStream inputStream) {
return s;
}

/**
* Create tree from string.
* @param s string representin the tree.
* @return root of tree
*/
public TreeNode parseTokensFromString(String s) {
StringTokenizer tokenizer = new StringTokenizer(s, "(:,);", true);
TreeNode root = constructTree(null, tokenizer);
return root.getChildren().get(0);
}

/**
* Construct tree from the input of the String Tokenizer.
* @param parent parent of the current node.
Expand Down Expand Up @@ -57,7 +70,9 @@ public TreeNode constructTree(TreeNode parent, StringTokenizer tokenizer) {
current = new BaseTreeNode();
break;
case ")":
nodes.add(current);
if (!current.getId().equals("-") && current.getWeight() != 0.0) {
nodes.add(current);
}
weight = 0;
if (tokenizer.hasMoreTokens() && tokenizer.nextToken().equals(":")) {
weight = Double.parseDouble(tokenizer.nextToken());
Expand All @@ -74,4 +89,18 @@ public TreeNode constructTree(TreeNode parent, StringTokenizer tokenizer) {
current.setChildren(nodes);
return current;
}

/**
* Test parser.
* @param args args.
*/
public static void main(String[] args) {
System.out.println("PhylgoGenetic Tree Parser");
PhyloGeneticTreeParser parser = new PhyloGeneticTreeParser();
// String s = "(A: 0.1,B: 0.2,(C:0.3,D:0.4):0.5);";
String s = "(A: 0.1,B: 0.2,(C:0.3,(Z:1,Y:2):0.4):0.5);";
// parser.parse(Launcher.class.getResourceAsStream("/genomes/340tree.rooted.TKK.nwk"));
System.out.println("Done");
parser.parse(new ByteArrayInputStream(s.getBytes(StandardCharsets.UTF_8)));
}
}
206 changes: 206 additions & 0 deletions src/main/resources/genomes/vs
Original file line number Diff line number Diff line change
@@ -0,0 +1,206 @@
let SessionLoad = 1
if &cp | set nocp | endif
let s:cpo_save=&cpo
set cpo&vim
map! <D-v> *
map  h
map <NL> mcOj'c
map  :CtrlPMRU
map  <Plug>(ctrlp)
nnoremap Y y$
vmap gx <Plug>NetrwBrowseXVis
nmap gx <Plug>NetrwBrowseX
map gf :bd!
map gd :bd
map gp :bp
map gn :bn
nnoremap <F3> :w | exec '!sh run.sh'
nnoremap <F4> :w | exec '!python '.shellescape('%').''
vnoremap <silent> <Plug>NetrwBrowseXVis :call netrw#BrowseXVis()
nnoremap <silent> <Plug>NetrwBrowseX :call netrw#BrowseX(expand((exists("g:netrw_gx")? g:netrw_gx : '<cfile>')),netrw#CheckIfRemote())
nnoremap <silent> <Plug>(ctrlp) :CtrlP
vmap <BS> "-d
vmap <D-x> "*d
vmap <D-c> "*y
vmap <D-v> "-d"*P
nmap <D-v> "*P
inoremap jj 
let &cpo=s:cpo_save
unlet s:cpo_save
set autochdir
set autoindent
set autoread
set background=dark
set backspace=eol,start,indent
set backup
set expandtab
set fileencodings=ucs-bom,utf-8,default,latin1
set helplang=nl
set hidden
set ignorecase
set incsearch
set laststatus=2
set mouse=a
set runtimepath=~/.vim,~/.vim/bundle/Vundle.vim,~/.vim/bundle/vim-airline,~/.vim/bundle/ctrlp.vim,~/.vim/bundle/syntastic,/usr/local/share/vim/vimfiles,/usr/local/share/vim/vim74,/usr/local/share/vim/vimfiles/after,~/.vim/after,~/.vim/bundle/Vundle.vim,~/.vim/bundle/Vundle.vim/after,~/.vim/bundle/vim-airline/after,~/.vim/bundle/ctrlp.vim/after,~/.vim/bundle/syntastic/after
set scrolloff=4
set shiftround
set shiftwidth=4
set showcmd
set showmatch
set showtabline=2
set smartindent
set smarttab
set softtabstop=4
set statusline=%#warningmsg#%{syntasticstatuslineflag()}%*
set tabline=%!airline#extensions#tabline#get()
set tabstop=4
set whichwrap=b,s,<,>,h,l
set wildignore=*/tmp/*,*.so,*.swp,*.zip,*.mp3,*.pyc
let s:so_save = &so | let s:siso_save = &siso | set so=0 siso=0
let v:this_session=expand("<sfile>:p")
silent only
cd ~/ProgrammingLife/PL1-2016/src/main/resources/genomes
if expand('%') == '' && !&modified && line('$') <= 1 && getline(1) == ''
let s:wipebuf = bufnr('%')
endif
set shortmess=aoO
badd +10 ~/ProgrammingLife/PL1-2016/src/main/resources/genomes/metadata.csv
badd +0 ~/ProgrammingLife/PL1-2016/src/main/resources/genomes/parser.py
argglobal
silent! argdel *
argadd metadata.csv
edit ~/ProgrammingLife/PL1-2016/src/main/resources/genomes/parser.py
set splitbelow splitright
set nosplitbelow
set nosplitright
wincmd t
set winheight=1 winwidth=1
argglobal
setlocal keymap=
setlocal noarabic
setlocal autoindent
setlocal backupcopy=
setlocal nobinary
setlocal nobreakindent
setlocal breakindentopt=
setlocal bufhidden=
setlocal buflisted
setlocal buftype=
setlocal nocindent
setlocal cinkeys=0{,0},0),:,!^F,o,O,e
setlocal cinoptions=
setlocal cinwords=if,else,while,do,for,switch
setlocal colorcolumn=
setlocal comments=b:#,fb:-
setlocal commentstring=#\ %s
setlocal complete=.,w,b,u,t,i
setlocal concealcursor=
setlocal conceallevel=0
setlocal completefunc=
setlocal nocopyindent
setlocal cryptmethod=
setlocal nocursorbind
setlocal nocursorcolumn
setlocal nocursorline
setlocal define=
setlocal dictionary=
setlocal nodiff
setlocal equalprg=
setlocal errorformat=
setlocal expandtab
if &filetype != 'python'
setlocal filetype=python
endif
setlocal fixendofline
setlocal foldcolumn=0
setlocal foldenable
setlocal foldexpr=0
setlocal foldignore=#
setlocal foldlevel=0
setlocal foldmarker={{{,}}}
set foldmethod=marker
setlocal foldmethod=marker
setlocal foldminlines=1
setlocal foldnestmax=20
setlocal foldtext=foldtext()
setlocal formatexpr=
setlocal formatoptions=tcq
setlocal formatlistpat=^\\s*\\d\\+[\\]:.)}\\t\ ]\\s*
setlocal grepprg=
setlocal iminsert=0
setlocal imsearch=0
setlocal include=^\\s*\\(from\\|import\\)
setlocal includeexpr=substitute(v:fname,'\\.','/','g')
setlocal indentexpr=GetPythonIndent(v:lnum)
setlocal indentkeys=0{,0},:,!^F,o,O,e,<:>,=elif,=except
setlocal noinfercase
setlocal iskeyword=@,48-57,_,192-255
setlocal keywordprg=pydoc
setlocal nolinebreak
setlocal nolisp
setlocal lispwords=
setlocal nolist
setlocal makeprg=
setlocal matchpairs=(:),{:},[:]
setlocal modeline
setlocal modifiable
setlocal nrformats=octal,hex
set number
setlocal number
setlocal numberwidth=4
setlocal omnifunc=pythoncomplete#Complete
setlocal path=
setlocal nopreserveindent
setlocal nopreviewwindow
setlocal quoteescape=\\
setlocal noreadonly
set relativenumber
setlocal relativenumber
setlocal norightleft
setlocal rightleftcmd=search
setlocal noscrollbind
setlocal shiftwidth=4
setlocal noshortname
setlocal smartindent
setlocal softtabstop=4
setlocal nospell
setlocal spellcapcheck=[.?!]\\_[\\])'\"\ \ ]\\+
setlocal spellfile=
setlocal spelllang=en
setlocal statusline=%!airline#statusline(1)
setlocal suffixesadd=.py
setlocal swapfile
setlocal synmaxcol=3000
if &syntax != 'python'
setlocal syntax=python
endif
setlocal tabstop=8
setlocal tags=
setlocal textwidth=0
setlocal thesaurus=
setlocal noundofile
setlocal undolevels=-123456
setlocal nowinfixheight
setlocal nowinfixwidth
setlocal wrap
setlocal wrapmargin=0
let s:l = 1 - ((0 * winheight(0) + 32) / 65)
if s:l < 1 | let s:l = 1 | endif
exe s:l
normal! zt
1
normal! 0
tabnext 1
if exists('s:wipebuf')
silent exe 'bwipe ' . s:wipebuf
endif
unlet! s:wipebuf
set winheight=1 winwidth=20 shortmess=filnxtToO
let s:sx = expand("<sfile>:p:r")."x.vim"
if file_readable(s:sx)
exe "source " . fnameescape(s:sx)
endif
let &so = s:so_save | let &siso = s:siso_save
doautoall SessionLoadPost
unlet SessionLoad
" vim: set ft=vim :
Loading