aboutsummaryrefslogtreecommitdiffstats
path: root/dist-tools/growthplot
diff options
context:
space:
mode:
Diffstat (limited to 'dist-tools/growthplot')
-rwxr-xr-xdist-tools/growthplot114
1 files changed, 0 insertions, 114 deletions
diff --git a/dist-tools/growthplot b/dist-tools/growthplot
deleted file mode 100755
index 73f4f4e9..00000000
--- a/dist-tools/growthplot
+++ /dev/null
@@ -1,114 +0,0 @@
-#!/bin/sh
-#
-# growthplot -- plot the fetchmail project's growth as a function of time
-#
-
-PATH="$PATH:.:./dist-tools"; export PATH
-
-tmp=/tmp/fetchmail-growthplot.$$
-mkdir $tmp
-
-# Get data from the NEWS file
-timeseries >$tmp/growthplot$$
-grep "^[0-9]" $tmp/growthplot$$ >$tmp/growthnumbers$$
-grep "^[0-9.]*.[05].0 " $tmp/growthplot$$ >$tmp/growthmajors$$
-sed '/^4.2.9/,$d' <$tmp/growthnumbers$$ >$tmp/growthannounce$$
-
-# gnuplot line styles. These occasionally change (like beteween 3.5 and 3.7);
-# use "echo 'set terminal png; test' | gnuplot | display -" to check.
-blue_boxes=3
-green_crosses=2
-cyan_diamonds=37 # Once purple triangles, but we can't do that anymore
-brown_triangles=23
-
-cat >$tmp/growthimage$$ <<EOF
-set title "Fetchmail project growth history"
-set xlabel 'Days since baseline'
-set ylabel 'Participants'
-set y2label 'Lines of code'
-set ytics nomirror
-set y2tics
-set tics out
-set autoscale y
-set y2range [5000:50000]
-set key bottom right box
-set terminal png
-
-EOF
-
-# OK, now write the event labels
-(
- count=0
- lastday=0
- breakheight=510
- while read version legend
- do
- if [ "$version" = '%' ]
- then
- echo "# Associate $lastday to '$legend'"
- count=$((count+1))
- lastday=$(($lastday-5))
- endy=$((breakheight+50+count*50))
- if ((endy>lasttotal))
- then
- # Label over curve hanging right, arrow down
- arrowhead=$((lasttotal+50))
- echo "set label '$legend' at $lastday-10, $endy+15"
- else
- # Label under curve hanging left, arrow up
- arrowhead=$((lasttotal-5))
- strlen=`python -c "print len('$legend')"`
- lablen=$((strlen*22))
- echo "set label '$legend' at $lastday-$lablen+10, $endy-15"
- fi
- echo set arrow \
- from $lastday, $endy \
- to $lastday, $arrowhead \
- head
- else
- set -- $legend
- size=$1
- friends=$2
- announce=$3
- total=$4
- days=$5
- date=$6
- lastday=$days
- lasttotal=$total
- fi
- done
-) <$tmp/growthplot$$ >>$tmp/growthimage$$
-
-# OK, now write the major-release labels
-(
- while read version size friends announce total days date
- do
- echo "set arrow from $days, $total - 55 to $days, $total - 15 head"
- echo "set label '$version' at $days - 5, $total - 65"
- done
-) <$tmp/growthmajors$$ >>$tmp/growthimage$$
-
-cat >>$tmp/growthimage$$ <<EOF
-plot [] [0:] '$tmp/growthnumbers$$' using 6:5 \
- title "Both lists" with points $blue_boxes, \
- '$tmp/growthannounce$$' using 6:4 \
- title "fetchmail-announce" with points $cyan_diamonds, \
- '$tmp/growthannounce$$' using 6:3 \
- title "fetchmail-friends" with points $green_crosses, \
- '$tmp/growthnumbers$$' using 6:2 axes x1y2 \
- title "Lines of code" with points $brown_triangles
-EOF
-
-gnuplot $tmp/growthimage$$ >growth.png
-
-rm -f $tmp/growth*
-rmdir $tmp
-
-# growthplot ends here
-
-
-
-
-
-
-