diff --git a/Treemmer.py b/Treemmer.py
index dde8849d25856650f30bfec826a21618c3caa52b..73375c7b6685e1ec7cba2952e2db32cb2184fae3 100644
--- a/Treemmer.py
+++ b/Treemmer.py
@@ -10,7 +10,6 @@ import argparse
 
 
 
-
 	
 
 ############################################################			define arg type float 0 < X > 1		###############################################################
@@ -214,6 +213,11 @@ def write_stop(t,output1,output2):
 	F=open(output2,"w")
 	F.write("\n".join(list_names))
 	F.close()
+##########################################		PLOT tree length decay		#######################
+
+
+
+
 
 
 
@@ -230,7 +234,7 @@ parser.add_argument('-r','--resolution', metavar='INT', default=1,help='number o
 parser.add_argument('-c','--cpu', metavar='INT', default=1,help='number of cpu to use (default: 1)',type =int, nargs='?')
 parser.add_argument('-v' ,'--verbose', metavar='0,1,2', default='0', help='0: silent, 1: show progress, 2: print tree at each iteration, 3: only for testing (findN), 4: only for testing (prune_t) (default: 1)', type =int, nargs='?',choices=[0,1,2,3,4])
 parser.add_argument('-p','--solve_polytomies',help='resolve polytmies at random (default: FALSE)',action='store_true',default =False)
-### yet to implemen
+parser.add_argument('-np','--no_plot',help='do not load matplotlib and plot (default: FALSE)',action='store_true',default =False)
 parser.add_argument('-X','--stop_at_X_leaves', metavar='0-n_leaves', default='0', help='stop pruning when the number of leaves fall below  X (integer)', type =int, nargs='?')
 parser.add_argument('-RTL','--stop_at_RTL', metavar='0-1', default='0', help='stop pruning when the relative tree length falls below RTL (decimal number between 0 and 1)', type =restricted_float,nargs='?')
 parser.add_argument('-lp','--leaves_pair', metavar='0,1,2', default=2,help='After the pair of leaves with the smallest distance is dentified Treemmer prunes: 0: the longest leaf\n1: the shortest leaf\n2: random choice (default)',type =int, nargs='?')
@@ -252,7 +256,7 @@ stop=0
 
 TOT_TL=calculate_TL(t)
 TL=TOT_TL
-
+ori_length = len(t)
 if arguments.solve_polytomies:
 	t.resolve_polytomy()
 
@@ -274,7 +278,8 @@ if arguments.verbose > 0:
 	
 	print "\nTreemmer will prune " + str(arguments.resolution) + " leaves at each iteration"
 	print "\nTreemmer will use " + str(arguments.cpu) + " cpu(s)"
-		
+x=[]
+y=[]	
 
 while (len(t) > 3):
 	counter = counter +1
@@ -340,6 +345,10 @@ while (len(t) > 3):
 		break	
 	
 	output.append (str(rel_TL) + '	' + str(len(t)))
+	length=len(t)	
+	x.append(length)
+	y.append(rel_TL)
+		
 
 	if arguments.verbose==1:
 		print "\nRTL :	" + str(rel_TL) + " N_seq:	" +str(len(t))
@@ -349,7 +358,22 @@ while (len(t) > 3):
 if stop == 0:
 	F=open(arguments.INFILE+"_res_"+ str(arguments.resolution) + "_LD","w")
 	F.write("\n".join(output))
-		
+
+
+
+if not arguments.no_plot:
+	import numpy as np
+	import matplotlib.pyplot as plt
+	from matplotlib.ticker import MaxNLocator
+	ax = plt.figure().gca()
+	ax.xaxis.set_major_locator(MaxNLocator(integer=True))	
+	plt.scatter(x, y, s= 2, c= 'black')
+	plt.xlim(ori_length, 3)
+	plt.ylim(0,1.1)
+	plt.xlabel('Number of leaves')
+	plt.ylabel('Relative tree length')
+	plt.savefig(arguments.INFILE+'_TLD.png')
+