pythonbook/实例学习plotly/Programming_Language_Index....

321 lines
68 KiB
Plaintext

{
"cells": [
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "qpyt1z2eVhxP"
},
"outputs": [],
"source": [
"str_data = \"\"\"\n",
"{name : 'Java',data : [[Date.UTC(2001, 5, 30), 26.492], [Date.UTC(2001, 6, 30), 25.028], [Date.UTC(2001, 7, 30), 24.660], [Date.UTC(2001, 8, 28), 24.817], [Date.UTC(2001, 9, 26), 25.676], [Date.UTC(2001, 10, 28), 24.369], [Date.UTC(2001, 11, 31), 24.195], [Date.UTC(2002, 0, 30), 24.063], [Date.UTC(2002, 1, 27), 24.005], [Date.UTC(2002, 2, 29), 24.409], [Date.UTC(2002, 3, 29), 25.049], [Date.UTC(2002, 4, 29), 25.195], [Date.UTC(2002, 5, 29), 24.196], [Date.UTC(2002, 6, 31), 24.534], [Date.UTC(2002, 7, 29), 22.886], [Date.UTC(2002, 8, 29), 24.482], [Date.UTC(2002, 9, 30), 24.201], [Date.UTC(2002, 10, 29), 24.116], [Date.UTC(2002, 11, 31), 24.227], [Date.UTC(2003, 0, 31), 24.791], [Date.UTC(2003, 1, 28), 24.775], [Date.UTC(2003, 2, 31), 24.596], [Date.UTC(2003, 3, 30), 24.664], [Date.UTC(2003, 4, 30), 23.108], [Date.UTC(2003, 5, 30), 22.337], [Date.UTC(2003, 6, 31), 23.209], [Date.UTC(2003, 7, 31), 22.242], [Date.UTC(2003, 8, 30), 21.902], [Date.UTC(2003, 9, 31), 23.084], [Date.UTC(2003, 10, 30), 25.008], [Date.UTC(2003, 11, 31), 23.573], [Date.UTC(2004, 0, 31), 22.564], [Date.UTC(2004, 1, 29), 23.173], [Date.UTC(2004, 2, 31), 24.240], [Date.UTC(2004, 3, 30), 18.692], [Date.UTC(2004, 4, 30), 17.539], [Date.UTC(2004, 5, 30), 17.055], [Date.UTC(2004, 6, 31), 16.997], [Date.UTC(2004, 7, 30), 15.896], [Date.UTC(2004, 8, 30), 17.050], [Date.UTC(2004, 9, 31), 14.804], [Date.UTC(2004, 10, 30), 16.332], [Date.UTC(2004, 11, 31), 17.478], [Date.UTC(2005, 0, 31), 18.340], [Date.UTC(2005, 1, 28), 18.871], [Date.UTC(2005, 2, 31), 16.981], [Date.UTC(2005, 3, 30), 17.397], [Date.UTC(2005, 4, 31), 18.569], [Date.UTC(2005, 5, 30), 19.659], [Date.UTC(2005, 6, 31), 21.206], [Date.UTC(2005, 7, 31), 22.442], [Date.UTC(2005, 8, 30), 21.871], [Date.UTC(2005, 11, 3), 22.128], [Date.UTC(2006, 0, 4), 22.255], [Date.UTC(2006, 1, 2), 22.430], [Date.UTC(2006, 2, 1), 21.889], [Date.UTC(2006, 3, 2), 21.275], [Date.UTC(2006, 4, 1), 21.316], [Date.UTC(2006, 5, 1), 21.128], [Date.UTC(2006, 6, 2), 21.853], [Date.UTC(2006, 7, 2), 22.377], [Date.UTC(2006, 8, 2), 21.532], [Date.UTC(2006, 9, 1), 21.172], [Date.UTC(2006, 10, 2), 20.400], [Date.UTC(2006, 11, 1), 19.907], [Date.UTC(2007, 0, 2), 19.160], [Date.UTC(2007, 1, 3), 18.978], [Date.UTC(2007, 2, 3), 18.044], [Date.UTC(2007, 3, 1), 18.360], [Date.UTC(2007, 4, 5), 19.140], [Date.UTC(2007, 5, 2), 20.025], [Date.UTC(2007, 6, 2), 21.014], [Date.UTC(2007, 7, 5), 21.768], [Date.UTC(2007, 8, 2), 21.701], [Date.UTC(2007, 9, 4), 21.616], [Date.UTC(2007, 10, 4), 20.542], [Date.UTC(2007, 11, 3), 20.049], [Date.UTC(2008, 0, 3), 20.849], [Date.UTC(2008, 1, 7), 21.483], [Date.UTC(2008, 5, 1), 20.890], [Date.UTC(2008, 6, 2), 21.345], [Date.UTC(2008, 7, 3), 21.571], [Date.UTC(2008, 8, 3), 20.715], [Date.UTC(2008, 9, 6), 20.949], [Date.UTC(2008, 10, 2), 20.299], [Date.UTC(2008, 11, 3), 17.917], [Date.UTC(2009, 0, 2), 19.022], [Date.UTC(2009, 1, 1), 19.401], [Date.UTC(2009, 2, 5), 19.797], [Date.UTC(2009, 3, 7), 19.341], [Date.UTC(2009, 4, 1), 19.537], [Date.UTC(2009, 5, 4), 20.147], [Date.UTC(2009, 6, 2), 20.452], [Date.UTC(2009, 7, 1), 19.527], [Date.UTC(2009, 8, 5), 19.383], [Date.UTC(2009, 9, 2), 18.650], [Date.UTC(2009, 10, 2), 18.373], [Date.UTC(2009, 11, 2), 17.061], [Date.UTC(2010, 0, 5), 17.482], [Date.UTC(2010, 1, 7), 17.348], [Date.UTC(2010, 2, 7), 17.509], [Date.UTC(2010, 3, 5), 18.051], [Date.UTC(2010, 4, 15), 17.957], [Date.UTC(2010, 6, 6), 18.673], [Date.UTC(2010, 6, 30), 17.994], [Date.UTC(2010, 8, 11), 17.915], [Date.UTC(2010, 9, 2), 18.166], [Date.UTC(2010, 10, 3), 18.509], [Date.UTC(2010, 11, 7), 17.999], [Date.UTC(2011, 0, 2), 17.773], [Date.UTC(2011, 1, 8), 18.482], [Date.UTC(2011, 2, 8), 19.711], [Date.UTC(2011, 3, 3), 19.043], [Date.UTC(2011, 4, 2), 18.160], [Date.UTC(2011, 5, 5), 18.580], [Date.UTC(2011, 5, 27), 18.580], [Date.UTC(2011, 6, 8), 19.251], [Date.UTC(2011, 7, 3), 19.409], [Date.UTC(2011, 8, 10), 18.761], [Date.UTC(2011, 9, 9), 17.913], [Date.UTC(2011, 10, 7), 17.874], [Date.UTC(2011, 11, 4), 17.561], [Date.UTC(2012, 0, 8), 17.468], [Date.UTC(2012, 1, 5), 17.050], [Date.UTC(2012, 2, 11), 17.110], [Date.UTC(2012, 3, 8), 17.026], [Date.UTC(2012, 4, 9), 16.599], [Date.UTC(2012, 5, 10), 16.265], [Date.UTC(2012, 6, 4), 16.087], [Date.UTC(2012, 7, 10), 16.352], [Date.UTC(2012, 8, 2), 16.267], [Date.UTC(2012, 9, 5), 17.193], [Date.UTC(2012, 10, 4), 17.455], [Date.UTC(2012, 11, 2), 17.567], [Date.UTC(2013, 0, 5), 17.417], [Date.UTC(2013, 1, 8), 18.387], [Date.UTC(2013, 2, 11), 18.156], [Date.UTC(2013, 3, 7), 17.681], [Date.UTC(2013, 4, 8), 16.914], [Date.UTC(2013, 5, 9), 16.656], [Date.UTC(2013, 6, 7), 15.906], [Date.UTC(2013, 6, 12), 15.906], [Date.UTC(2013, 7, 4), 15.978], [Date.UTC(2013, 8, 11), 16.154], [Date.UTC(2013, 9, 10), 16.107], [Date.UTC(2013, 10, 9), 16.521], [Date.UTC(2013, 11, 6), 17.311], [Date.UTC(2014, 0, 1), 16.523], [Date.UTC(2014, 1, 8), 17.316], [Date.UTC(2014, 2, 3), 16.406], [Date.UTC(2014, 3, 10), 17.348], [Date.UTC(2014, 4, 7), 16.907], [Date.UTC(2014, 5, 8), 16.113], [Date.UTC(2014, 6, 6), 15.688], [Date.UTC(2014, 7, 11), 14.984], [Date.UTC(2014, 8, 1), 14.140], [Date.UTC(2014, 9, 3), 13.506], [Date.UTC(2014, 10, 8), 14.391], [Date.UTC(2014, 11, 7), 14.959], [Date.UTC(2015, 0, 6), 15.528], [Date.UTC(2015, 1, 5), 15.345], [Date.UTC(2015, 2, 7), 15.580], [Date.UTC(2015, 3, 13), 16.041], [Date.UTC(2015, 4, 13), 16.869], [Date.UTC(2015, 5, 6), 17.822], [Date.UTC(2015, 6, 12), 17.728], [Date.UTC(2015, 7, 6), 19.274], [Date.UTC(2015, 8, 5), 19.565], [Date.UTC(2015, 9, 4), 19.543], [Date.UTC(2015, 10, 7), 20.403], [Date.UTC(2015, 11, 4), 20.973], [Date.UTC(2016, 0, 2), 21.465], [Date.UTC(2016, 1, 2), 21.145], [Date.UTC(2016, 2, 3), 20.528], [Date.UTC(2016, 3, 7), 20.846], [Date.UTC(2016, 4, 6), 20.956], [Date.UTC(2016, 5, 5), 20.794], [Date.UTC(2016, 6, 4), 19.804], [Date.UTC(2016, 7, 6), 19.010], [Date.UTC(2016, 8, 8), 18.236], [Date.UTC(2016, 9, 7), 18.799], [Date.UTC(2016, 10, 5), 18.755], [Date.UTC(2016, 11, 4), 17.856], [Date.UTC(2017, 0, 7), 17.278], [Date.UTC(2017, 1, 8), 16.676], [Date.UTC(2017, 2, 7), 16.384], [Date.UTC(2017, 3, 9), 15.568], [Date.UTC(2017, 4, 6), 14.639], [Date.UTC(2017, 5, 3), 14.493], [Date.UTC(2017, 6, 7), 13.774], [Date.UTC(2017, 7, 2), 12.961], [Date.UTC(2017, 8, 6), 12.687], [Date.UTC(2017, 9, 5), 12.431], [Date.UTC(2017, 10, 12), 13.231], [Date.UTC(2017, 11, 9), 13.268], [Date.UTC(2018, 0, 3), 14.215], [Date.UTC(2018, 1, 8), 14.988], [Date.UTC(2018, 2, 7), 14.941], [Date.UTC(2018, 3, 1), 15.777], [Date.UTC(2018, 4, 6), 16.380], [Date.UTC(2018, 5, 10), 15.368], [Date.UTC(2018, 6, 7), 16.139], [Date.UTC(2018, 7, 1), 16.881], [Date.UTC(2018, 8, 3), 17.436], [Date.UTC(2018, 9, 5), 17.801], [Date.UTC(2018, 10, 8), 16.746], [Date.UTC(2018, 11, 2), 15.932], [Date.UTC(2019, 0, 4), 16.904], [Date.UTC(2019, 1, 6), 15.876], [Date.UTC(2019, 2, 2), 14.880], [Date.UTC(2019, 3, 7), 15.035], [Date.UTC(2019, 4, 4), 16.005], [Date.UTC(2019, 5, 9), 15.004], [Date.UTC(2019, 6, 6), 15.058], [Date.UTC(2019, 7, 5), 16.028], [Date.UTC(2019, 8, 9), 16.661], [Date.UTC(2019, 9, 5), 16.884]]}, {name : 'C',data : [[Date.UTC(2001, 5, 30), 20.240], [Date.UTC(2001, 6, 30), 20.773], [Date.UTC(2001, 7, 30), 20.747], [Date.UTC(2001, 8, 28), 20.772], [Date.UTC(2001, 9, 26), 19.751], [Date.UTC(2001, 10, 28), 19.212], [Date.UTC(2001, 11, 31), 20.136], [Date.UTC(2002, 0, 30), 18.825], [Date.UTC(2002, 1, 27), 19.888], [Date.UTC(2002, 2, 29), 19.852], [Date.UTC(2002, 3, 29), 19.820], [Date.UTC(2002, 4, 29), 19.987], [Date.UTC(2002, 5, 29), 19.573], [Date.UTC(2002, 6, 31), 19.251], [Date.UTC(2002, 7, 29), 18.162], [Date.UTC(2002, 8, 29), 18.695], [Date.UTC(2002, 9, 30), 18.727], [Date.UTC(2002, 10, 29), 17.505], [Date.UTC(2002, 11, 31), 17.259], [Date.UTC(2003, 0, 31), 18.249], [Date.UTC(2003, 1, 28), 18.540], [Date.UTC(2003, 2, 31), 17.213], [Date.UTC(2003, 3, 30), 18.017], [Date.UTC(2003, 4, 30), 18.501], [Date.UTC(2003, 5, 30), 18.516], [Date.UTC(2003, 6, 31), 17.969], [Date.UTC(2003, 7, 31), 17.776], [Date.UTC(2003, 8, 30), 18.309], [Date.UTC(2003, 9, 31), 17.002], [Date.UTC(2003, 10, 30), 18.473], [Date.UTC(2003, 11, 31), 18.600], [Date.UTC(2004, 0, 31), 18.195], [Date.UTC(2004, 1, 29), 18.928], [Date.UTC(2004, 2, 31), 17.750], [Date.UTC(2004, 3, 30), 17.951], [Date.UTC(2004, 4, 30), 18.290], [Date.UTC(2004, 5, 30), 17.144], [Date.UTC(2004, 6, 31), 16.335], [Date.UTC(2004, 7, 30), 17.122], [Date.UTC(2004, 8, 30), 18.172], [Date.UTC(2004, 9, 31), 17.992], [Date.UTC(2004, 10, 30), 19.696], [Date.UTC(2004, 11, 31), 20.709], [Date.UTC(2005, 0, 31), 19.820], [Date.UTC(2005, 1, 28), 19.465], [Date.UTC(2005, 2, 31), 18.630], [Date.UTC(2005, 3, 30), 18.522], [Date.UTC(2005, 4, 31), 19.368], [Date.UTC(2005, 5, 30), 19.846], [Date.UTC(2005, 6, 31), 19.473], [Date.UTC(2005, 7, 31), 19.160], [Date.UTC(2005, 8, 30), 18.773], [Date.UTC(2005, 11, 3), 19.632], [Date.UTC(2006, 0, 4), 19.008], [Date.UTC(2006, 1, 2), 18.330], [Date.UTC(2006, 2, 1), 17.794], [Date.UTC(2006, 3, 2), 17.688], [Date.UTC(2006, 4, 1), 17.690], [Date.UTC(2006, 5, 1), 18.253], [Date.UTC(2006, 6, 2), 17.829], [Date.UTC(2006, 7, 2), 17.430], [Date.UTC(2006, 8, 2), 18.059], [Date.UTC(2006, 9, 1), 17.664], [Date.UTC(2006, 10, 2), 17.198], [Date.UTC(2006, 11, 1), 16.616], [Date.UTC(2007, 0, 2), 15.807], [Date.UTC(2007, 1, 3), 16.104], [Date.UTC(2007, 2, 3), 15.633], [Date.UTC(2007, 3, 1), 14.937], [Date.UTC(2007, 4, 5), 15.152], [Date.UTC(2007, 5, 2), 15.967], [Date.UTC(2007, 6, 2), 16.363], [Date.UTC(2007, 7, 5), 15.699], [Date.UTC(2007, 8, 2), 14.908], [Date.UTC(2007, 9, 4), 14.591], [Date.UTC(2007, 10, 4), 13.969], [Date.UTC(2007, 11, 3), 13.173], [Date.UTC(2008, 0, 3), 13.916], [Date.UTC(2008, 1, 7), 14.859], [Date.UTC(2008, 5, 1), 15.513], [Date.UTC(2008, 6, 2), 15.945], [Date.UTC(2008, 7, 3), 16.178], [Date.UTC(2008, 8, 3), 15.379], [Date.UTC(2008, 9, 6), 15.565], [Date.UTC(2008, 10, 2), 15.276], [Date.UTC(2008, 11, 3), 15.017], [Date.UTC(2009, 0, 2), 15.931], [Date.UTC(2009, 1, 1), 15.837], [Date.UTC(2009, 2, 5), 15.862], [Date.UTC(2009, 3, 7), 15.472], [Date.UTC(2009, 4, 1), 16.128], [Date.UTC(2009, 5, 4), 16.779], [Date.UTC(2009, 6, 2), 17.319], [Date.UTC(2009, 7, 1), 17.220], [Date.UTC(2009, 8, 5), 16.861], [Date.UTC(2009, 9, 2), 16.843], [Date.UTC(2009, 10, 2), 17.315], [Date.UTC(2009, 11, 2), 16.285], [Date.UTC(2010, 0, 5), 16.215], [Date.UTC(2010, 1, 7), 16.602], [Date.UTC(2010, 2, 7), 17.279], [Date.UTC(2010, 3, 5), 18.058], [Date.UTC(2010, 4, 15), 18.186], [Date.UTC(2010, 6, 6), 18.480], [Date.UTC(2010, 6, 30), 17.866], [Date.UTC(2010, 8, 11), 17.147], [Date.UTC(2010, 9, 2), 17.177], [Date.UTC(2010, 10, 3), 16.717], [Date.UTC(2010, 11, 7), 16.076], [Date.UTC(2011, 0, 2), 15.822], [Date.UTC(2011, 1, 8), 14.986], [Date.UTC(2011, 2, 8), 15.262], [Date.UTC(2011, 3, 3), 16.162], [Date.UTC(2011, 4, 2), 16.170], [Date.UTC(2011, 5, 5), 16.278], [Date.UTC(2011, 5, 27), 16.278], [Date.UTC(2011, 6, 8), 17.280], [Date.UTC(2011, 7, 3), 17.390], [Date.UTC(2011, 8, 10), 18.002], [Date.UTC(2011, 9, 9), 17.707], [Date.UTC(2011, 10, 7), 17.322], [Date.UTC(2011, 11, 4), 17.057], [Date.UTC(2012, 0, 8), 16.967], [Date.UTC(2012, 1, 5), 16.523], [Date.UTC(2012, 2, 11), 17.087], [Date.UTC(2012, 3, 8), 17.555], [Date.UTC(2012, 4, 9), 17.346], [Date.UTC(2012, 5, 10), 17.725], [Date.UTC(2012, 6, 4), 18.331], [Date.UTC(2012, 7, 10), 18.937], [Date.UTC(2012, 8, 2), 19.295], [Date.UTC(2012, 9, 5), 19.822], [Date.UTC(2012, 10, 4), 19.224], [Date.UTC(2012, 11, 2), 18.696], [Date.UTC(2013, 0, 5), 17.855], [Date.UTC(2013, 1, 8), 17.080], [Date.UTC(2013, 2, 11), 17.141], [Date.UTC(2013, 3, 7), 17.862], [Date.UTC(2013, 4, 8), 18.729], [Date.UTC(2013, 5, 9), 17.809], [Date.UTC(2013, 6, 7), 17.628], [Date.UTC(2013, 6, 12), 17.628], [Date.UTC(2013, 7, 4), 15.974], [Date.UTC(2013, 8, 11), 16.975], [Date.UTC(2013, 9, 10), 17.246], [Date.UTC(2013, 10, 9), 18.155], [Date.UTC(2013, 11, 6), 17.890], [Date.UTC(2014, 0, 1), 17.944], [Date.UTC(2014, 1, 8), 18.334], [Date.UTC(2014, 2, 3), 17.535], [Date.UTC(2014, 3, 10), 17.631], [Date.UTC(2014, 4, 7), 16.926], [Date.UTC(2014, 5, 8), 16.191], [Date.UTC(2014, 6, 6), 17.145], [Date.UTC(2014, 7, 11), 16.401], [Date.UTC(2014, 8, 1), 16.721], [Date.UTC(2014, 9, 3), 17.655], [Date.UTC(2014, 10, 8), 17.469], [Date.UTC(2014, 11, 7), 17.588], [Date.UTC(2015, 0, 6), 16.703], [Date.UTC(2015, 1, 5), 16.488], [Date.UTC(2015, 2, 7), 16.642], [Date.UTC(2015, 3, 13), 15.745], [Date.UTC(2015, 4, 13), 16.847], [Date.UTC(2015, 5, 6), 16.788], [Date.UTC(2015, 6, 12), 16.147], [Date.UTC(2015, 7, 6), 14.732], [Date.UTC(2015, 8, 5), 15.621], [Date.UTC(2015, 9, 4), 16.190], [Date.UTC(2015, 10, 7), 17.145], [Date.UTC(2015, 11, 4), 16.460], [Date.UTC(2016, 0, 2), 16.036], [Date.UTC(2016, 1, 2), 15.594], [Date.UTC(2016, 2, 3), 14.600], [Date.UTC(2016, 3, 7), 13.905], [Date.UTC(2016, 4, 6), 13.223], [Date.UTC(2016, 5, 5), 12.376], [Date.UTC(2016, 6, 4), 12.238], [Date.UTC(2016, 7, 6), 11.303], [Date.UTC(2016, 8, 8), 10.955], [Date.UTC(2016, 9, 7), 9.835], [Date.UTC(2016, 10, 5), 9.203], [Date.UTC(2016, 11, 4), 8.726], [Date.UTC(2017, 0, 7), 9.349], [Date.UTC(2017, 1, 8), 8.445], [Date.UTC(2017, 2, 7), 7.742], [Date.UTC(2017, 3, 9), 6.966], [Date.UTC(2017, 4, 6), 7.002], [Date.UTC(2017, 5, 3), 6.848], [Date.UTC(2017, 6, 7), 7.321], [Date.UTC(2017, 7, 2), 6.477], [Date.UTC(2017, 8, 6), 7.382], [Date.UTC(2017, 9, 5), 8.374], [Date.UTC(2017, 10, 12), 9.293], [Date.UTC(2017, 11, 9), 10.158], [Date.UTC(2018, 0, 3), 11.037], [Date.UTC(2018, 1, 8), 11.857], [Date.UTC(2018, 2, 7), 12.760], [Date.UTC(2018, 3, 1), 13.589], [Date.UTC(2018, 4, 6), 14.000], [Date.UTC(2018, 5, 10), 14.936], [Date.UTC(2018, 6, 7), 14.662], [Date.UTC(2018, 7, 1), 14.966], [Date.UTC(2018, 8, 3), 15.447], [Date.UTC(2018, 9, 5), 15.376], [Date.UTC(2018, 10, 8), 14.396], [Date.UTC(2018, 11, 2), 14.282], [Date.UTC(2019, 0, 4), 13.337], [Date.UTC(2019, 1, 6), 12.424], [Date.UTC(2019, 2, 2), 13.305], [Date.UTC(2019, 3, 7), 14.076], [Date.UTC(2019, 4, 4), 14.243], [Date.UTC(2019, 5, 9), 13.300], [Date.UTC(2019, 6, 6), 14.211], [Date.UTC(2019, 7, 5), 15.154], [Date.UTC(2019, 8, 9), 15.205], [Date.UTC(2019, 9, 5), 16.180]]}, {name : 'Python',data : [[Date.UTC(2001, 5, 30), 1.250], [Date.UTC(2001, 6, 30), 1.135], [Date.UTC(2001, 7, 30), 1.197], [Date.UTC(2001, 8, 28), 1.170], [Date.UTC(2001, 9, 26), 1.284], [Date.UTC(2001, 10, 28), 1.234], [Date.UTC(2001, 11, 31), 1.043], [Date.UTC(2002, 0, 30), 1.017], [Date.UTC(2002, 1, 27), 0.987], [Date.UTC(2002, 2, 29), 0.989], [Date.UTC(2002, 3, 29), 1.069], [Date.UTC(2002, 4, 29), 1.057], [Date.UTC(2002, 5, 29), 1.125], [Date.UTC(2002, 6, 31), 1.081], [Date.UTC(2002, 7, 29), 1.217], [Date.UTC(2002, 8, 29), 1.081], [Date.UTC(2002, 9, 30), 1.187], [Date.UTC(2002, 10, 29), 1.005], [Date.UTC(2002, 11, 31), 1.002], [Date.UTC(2003, 0, 31), 1.033], [Date.UTC(2003, 1, 28), 0.974], [Date.UTC(2003, 2, 31), 0.988], [Date.UTC(2003, 3, 30), 1.007], [Date.UTC(2003, 4, 30), 1.161], [Date.UTC(2003, 5, 30), 1.285], [Date.UTC(2003, 6, 31), 1.297], [Date.UTC(2003, 7, 31), 1.425], [Date.UTC(2003, 8, 30), 1.486], [Date.UTC(2003, 9, 31), 1.766], [Date.UTC(2003, 10, 30), 1.097], [Date.UTC(2003, 11, 31), 1.125], [Date.UTC(2004, 0, 31), 1.006], [Date.UTC(2004, 1, 29), 1.018], [Date.UTC(2004, 2, 31), 1.008], [Date.UTC(2004, 3, 30), 4.565], [Date.UTC(2004, 4, 30), 6.579], [Date.UTC(2004, 5, 30), 4.963], [Date.UTC(2004, 6, 31), 4.704], [Date.UTC(2004, 7, 30), 5.597], [Date.UTC(2004, 8, 30), 4.438], [Date.UTC(2004, 9, 31), 5.200], [Date.UTC(2004, 10, 30), 3.029], [Date.UTC(2004, 11, 31), 2.842], [Date.UTC(2005, 0, 31), 2.506], [Date.UTC(2005, 1, 28), 2.424], [Date.UTC(2005, 2, 31), 2.697], [Date.UTC(2005, 3, 30), 2.480], [Date.UTC(2005, 4, 31), 2.802], [Date.UTC(2005, 5, 30), 2.525], [Date.UTC(2005, 6, 31), 2.883], [Date.UTC(2005, 7, 31), 3.032], [Date.UTC(2005, 8, 30), 2.882], [Date.UTC(2005, 11, 3), 2.678], [Date.UTC(2006, 0, 4), 2.605], [Date.UTC(2006, 1, 2), 2.669], [Date.UTC(2006, 2, 1), 3.093], [Date.UTC(2006, 3, 2), 2.759], [Date.UTC(2006, 4, 1), 3.042], [Date.UTC(2006, 5, 1), 3.464], [Date.UTC(2006, 6, 2), 3.017], [Date.UTC(2006, 7, 2), 3.071], [Date.UTC(2006, 8, 2), 3.144], [Date.UTC(2006, 9, 1), 3.466], [Date.UTC(2006, 10, 2), 3.641], [Date.UTC(2006, 11, 1), 3.762], [Date.UTC(2007, 0, 2), 3.502], [Date.UTC(2007, 1, 3), 3.566], [Date.UTC(2007, 2, 3), 3.897], [Date.UTC(2007, 3, 1), 3.814], [Date.UTC(2007, 4, 5), 3.779], [Date.UTC(2007, 5, 2), 3.161], [Date.UTC(2007, 6, 2), 3.024], [Date.UTC(2007, 7, 5), 2.749], [Date.UTC(2007, 8, 2), 3.025], [Date.UTC(2007, 9, 4), 3.433], [Date.UTC(2007, 10, 4), 4.227], [Date.UTC(2007, 11, 3), 4.697], [Date.UTC(2008, 0, 3), 5.538], [Date.UTC(2008, 1, 7), 4.763], [Date.UTC(2008, 5, 1), 4.899], [Date.UTC(2008, 6, 2), 4.973], [Date.UTC(2008, 7, 3), 4.975], [Date.UTC(2008, 8, 3), 5.012], [Date.UTC(2008, 9, 6), 4.565], [Date.UTC(2008, 10, 2), 5.140], [Date.UTC(2008, 11, 3), 4.169], [Date.UTC(2009, 0, 2), 4.731], [Date.UTC(2009, 1, 1), 4.567], [Date.UTC(2009, 2, 5), 5.185], [Date.UTC(2009, 3, 7), 6.080], [Date.UTC(2009, 4, 1), 5.548], [Date.UTC(2009, 5, 4), 4.756], [Date.UTC(2009, 6, 2), 4.435], [Date.UTC(2009, 7, 1), 4.489], [Date.UTC(2009, 8, 5), 3.930], [Date.UTC(2009, 9, 2), 3.901], [Date.UTC(2009, 10, 2), 4.672], [Date.UTC(2009, 11, 2), 5.185], [Date.UTC(2010, 0, 5), 4.453], [Date.UTC(2010, 1, 7), 4.314], [Date.UTC(2010, 2, 7), 4.230], [Date.UTC(2010, 3, 5), 4.205], [Date.UTC(2010, 4, 15), 4.097], [Date.UTC(2010, 6, 6), 4.217], [Date.UTC(2010, 6, 30), 4.223], [Date.UTC(2010, 8, 11), 4.583], [Date.UTC(2010, 9, 2), 4.860], [Date.UTC(2010, 10, 3), 5.679], [Date.UTC(2010, 11, 7), 6.482], [Date.UTC(2011, 0, 2), 6.265], [Date.UTC(2011, 1, 8), 7.038], [Date.UTC(2011, 2, 8), 5.737], [Date.UTC(2011, 3, 3), 4.931], [Date.UTC(2011, 4, 2), 4.583], [Date.UTC(2011, 5, 5), 3.899], [Date.UTC(2011, 5, 27), 3.899], [Date.UTC(2011, 6, 8), 3.583], [Date.UTC(2011, 7, 3), 3.415], [Date.UTC(2011, 8, 10), 4.000], [Date.UTC(2011, 9, 9), 3.944], [Date.UTC(2011, 10, 7), 3.617], [Date.UTC(2011, 11, 4), 3.492], [Date.UTC(2012, 0, 8), 3.213], [Date.UTC(2012, 1, 5), 3.148], [Date.UTC(2012, 2, 11), 3.291], [Date.UTC(2012, 3, 8), 3.665], [Date.UTC(2012, 4, 9), 3.819], [Date.UTC(2012, 5, 10), 3.848], [Date.UTC(2012, 6, 4), 4.000], [Date.UTC(2012, 7, 10), 3.876], [Date.UTC(2012, 8, 2), 3.861], [Date.UTC(2012, 9, 5), 3.895], [Date.UTC(2012, 10, 4), 4.062], [Date.UTC(2012, 11, 2), 3.848], [Date.UTC(2013, 0, 5), 4.173], [Date.UTC(2013, 1, 8), 4.949], [Date.UTC(2013, 2, 11), 4.388], [Date.UTC(2013, 3, 7), 4.442], [Date.UTC(2013, 4, 8), 4.322], [Date.UTC(2013, 5, 9), 4.183], [Date.UTC(2013, 6, 7), 4.035], [Date.UTC(2013, 6, 12), 4.035], [Date.UTC(2013, 7, 4), 3.603], [Date.UTC(2013, 8, 11), 3.169], [Date.UTC(2013, 9, 10), 3.107], [Date.UTC(2013, 10, 9), 3.110], [Date.UTC(2013, 11, 6), 2.210], [Date.UTC(2014, 0, 1), 2.373], [Date.UTC(2014, 1, 8), 2.157], [Date.UTC(2014, 2, 3), 2.021], [Date.UTC(2014, 3, 10), 1.993], [Date.UTC(2014, 4, 7), 3.057], [Date.UTC(2014, 5, 8), 2.710], [Date.UTC(2014, 6, 6), 2.656], [Date.UTC(2014, 7, 11), 3.121], [Date.UTC(2014, 8, 1), 2.782], [Date.UTC(2014, 9, 3), 2.333], [Date.UTC(2014, 10, 8), 2.589], [Date.UTC(2014, 11, 7), 2.287], [Date.UTC(2015, 0, 6), 2.613], [Date.UTC(2015, 1, 5), 2.882], [Date.UTC(2015, 2, 7), 2.614], [Date.UTC(2015, 3, 13), 2.690], [Date.UTC(2015, 4, 13), 3.725], [Date.UTC(2015, 5, 6), 3.999], [Date.UTC(2015, 6, 12), 4.257], [Date.UTC(2015, 7, 6), 4.066], [Date.UTC(2015, 8, 5), 3.664], [Date.UTC(2015, 9, 4), 4.512], [Date.UTC(2015, 10, 7), 3.771], [Date.UTC(2015, 11, 4), 4.429], [Date.UTC(2016, 0, 2), 3.854], [Date.UTC(2016, 1, 2), 4.180], [Date.UTC(2016, 2, 3), 4.257], [Date.UTC(2016, 3, 7), 3.330], [Date.UTC(2016, 4, 6), 3.789], [Date.UTC(2016, 5, 5), 3.900], [Date.UTC(2016, 6, 4), 4.166], [Date.UTC(2016, 7, 6), 4.404], [Date.UTC(2016, 8, 8), 4.302], [Date.UTC(2016, 9, 7), 3.775], [Date.UTC(2016, 10, 5), 3.567], [Date.UTC(2016, 11, 4), 4.239], [Date.UTC(2017, 0, 7), 3.465], [Date.UTC(2017, 1, 8), 4.043], [Date.UTC(2017, 2, 7), 3.919], [Date.UTC(2017, 3, 9), 3.457], [Date.UTC(2017, 4, 6), 3.548], [Date.UTC(2017, 5, 3), 4.333], [Date.UTC(2017, 6, 7), 3.543], [Date.UTC(2017, 7, 2), 3.692], [Date.UTC(2017, 8, 6), 2.983], [Date.UTC(2017, 9, 5), 3.803], [Date.UTC(2017, 10, 12), 4.482], [Date.UTC(2017, 11, 9), 3.777], [Date.UTC(2018, 0, 3), 4.678], [Date.UTC(2018, 1, 8), 5.168], [Date.UTC(2018, 2, 7), 5.869], [Date.UTC(2018, 3, 1), 5.803], [Date.UTC(2018, 4, 6), 5.192], [Date.UTC(2018, 5, 10), 5.761], [Date.UTC(2018, 6, 7), 6.361], [Date.UTC(2018, 7, 1), 6.992], [Date.UTC(2018, 8, 3), 7.653], [Date.UTC(2018, 9, 5), 7.156], [Date.UTC(2018, 10, 8), 7.683], [Date.UTC(2018, 11, 2), 8.376], [Date.UTC(2019, 0, 4), 8.294], [Date.UTC(2019, 1, 6), 7.574], [Date.UTC(2019, 2, 2), 8.262], [Date.UTC(2019, 3, 7), 8.166], [Date.UTC(2019, 4, 4), 7.830], [Date.UTC(2019, 5, 9), 8.530], [Date.UTC(2019, 6, 6), 9.260], [Date.UTC(2019, 7, 5), 10.020], [Date.UTC(2019, 8, 9), 9.874], [Date.UTC(2019, 9, 5), 9.089]]}, {name : 'C++',data : [[Date.UTC(2001, 5, 30), 14.200], [Date.UTC(2001, 6, 30), 16.111], [Date.UTC(2001, 7, 30), 16.124], [Date.UTC(2001, 8, 28), 15.852], [Date.UTC(2001, 9, 26), 16.097], [Date.UTC(2001, 10, 28), 15.673], [Date.UTC(2001, 11, 31), 14.963], [Date.UTC(2002, 0, 30), 15.182], [Date.UTC(2002, 1, 27), 15.537], [Date.UTC(2002, 2, 29), 15.912], [Date.UTC(2002, 3, 29), 15.372], [Date.UTC(2002, 4, 29), 14.857], [Date.UTC(2002, 5, 29), 14.179], [Date.UTC(2002, 6, 31), 14.939], [Date.UTC(2002, 7, 29), 14.769], [Date.UTC(2002, 8, 29), 15.897], [Date.UTC(2002, 9, 30), 15.035], [Date.UTC(2002, 10, 29), 13.644], [Date.UTC(2002, 11, 31), 13.186], [Date.UTC(2003, 0, 31), 14.634], [Date.UTC(2003, 1, 28), 15.533], [Date.UTC(2003, 2, 31), 14.572], [Date.UTC(2003, 3, 30), 15.801], [Date.UTC(2003, 4, 30), 15.584], [Date.UTC(2003, 5, 30), 16.719], [Date.UTC(2003, 6, 31), 16.577], [Date.UTC(2003, 7, 31), 17.531], [Date.UTC(2003, 8, 30), 16.173], [Date.UTC(2003, 9, 31), 16.312], [Date.UTC(2003, 10, 30), 17.422], [Date.UTC(2003, 11, 31), 16.083], [Date.UTC(2004, 0, 31), 15.710], [Date.UTC(2004, 1, 29), 14.500], [Date.UTC(2004, 2, 31), 15.990], [Date.UTC(2004, 3, 30), 12.270], [Date.UTC(2004, 4, 30), 12.548], [Date.UTC(2004, 5, 30), 13.442], [Date.UTC(2004, 6, 31), 15.306], [Date.UTC(2004, 7, 30), 14.916], [Date.UTC(2004, 8, 30), 15.016], [Date.UTC(2004, 9, 31), 13.865], [Date.UTC(2004, 10, 30), 11.914], [Date.UTC(2004, 11, 31), 11.927], [Date.UTC(2005, 0, 31), 11.337], [Date.UTC(2005, 1, 28), 11.632], [Date.UTC(2005, 2, 31), 10.191], [Date.UTC(2005, 3, 30), 9.903], [Date.UTC(2005, 4, 31), 9.722], [Date.UTC(2005, 5, 30), 11.060], [Date.UTC(2005, 6, 31), 10.514], [Date.UTC(2005, 7, 31), 11.168], [Date.UTC(2005, 8, 30), 11.820], [Date.UTC(2005, 11, 3), 11.027], [Date.UTC(2006, 0, 4), 11.465], [Date.UTC(2006, 1, 2), 11.295], [Date.UTC(2006, 2, 1), 11.159], [Date.UTC(2006, 3, 2), 10.900], [Date.UTC(2006, 4, 1), 10.935], [Date.UTC(2006, 5, 1), 10.670], [Date.UTC(2006, 6, 2), 9.779], [Date.UTC(2006, 7, 2), 10.254], [Date.UTC(2006, 8, 2), 10.753], [Date.UTC(2006, 9, 1), 11.063], [Date.UTC(2006, 10, 2), 11.055], [Date.UTC(2006, 11, 1), 10.409], [Date.UTC(2007, 0, 2), 10.425], [Date.UTC(2007, 1, 3), 10.768], [Date.UTC(2007, 2, 3), 11.109], [Date.UTC(2007, 3, 1), 10.718], [Date.UTC(2007, 4, 5), 10.114], [Date.UTC(2007, 5, 2), 11.118], [Date.UTC(2007, 6, 2), 10.502], [Date.UTC(2007, 7, 5), 10.111], [Date.UTC(2007, 8, 2), 9.938], [Date.UTC(2007, 9, 4), 9.584], [Date.UTC(2007, 10, 4), 8.750], [Date.UTC(2007, 11, 3), 7.871], [Date.UTC(2008, 0, 3), 8.730], [Date.UTC(2008, 1, 7), 9.274], [Date.UTC(2008, 5, 1), 10.806], [Date.UTC(2008, 6, 2), 10.693], [Date.UTC(2008, 7, 3), 10.057], [Date.UTC(2008, 8, 3), 10.716], [Date.UTC(2008, 9, 6), 10.954], [Date.UTC(2008, 10, 2), 10.357], [Date.UTC(2008, 11, 3), 10.096], [Date.UTC(2009, 0, 2), 10.116], [Date.UTC(2009, 1, 1), 9.633], [Date.UTC(2009, 2, 5), 10.357], [Date.UTC(2009, 3, 7), 10.741], [Date.UTC(2009, 4, 1), 11.068], [Date.UTC(2009, 5, 4), 10.594], [Date.UTC(2009, 6, 2), 10.419], [Date.UTC(2009, 7, 1), 10.501], [Date.UTC(2009, 8, 5), 9.988], [Date.UTC(2009, 9, 2), 9.879], [Date.UTC(2009, 10, 2), 10.002], [Date.UTC(2009, 11, 2), 9.175], [Date.UTC(2010, 0, 5), 9.709], [Date.UTC(2010, 1, 7), 9.447], [Date.UTC(2010, 2, 7), 9.610], [Date.UTC(2010, 3, 5), 9.707], [Date.UTC(2010, 4, 15), 10.378], [Date.UTC(2010, 6, 6), 10.469], [Date.UTC(2010, 6, 30), 9.658], [Date.UTC(2010, 8, 11), 9.812], [Date.UTC(2010, 9, 2), 9.802], [Date.UTC(2010, 10, 3), 9.497], [Date.UTC(2010, 11, 7), 9.014], [Date.UTC(2011, 0, 2), 8.783], [Date.UTC(2011, 1, 8), 8.187], [Date.UTC(2011, 2, 8), 8.754], [Date.UTC(2011, 3, 3), 9.225], [Date.UTC(2011, 4, 2), 9.146], [Date.UTC(2011, 5, 5), 9.830], [Date.UTC(2011, 5, 27), 9.830], [Date.UTC(2011, 6, 8), 9.017], [Date.UTC(2011, 7, 3), 8.433], [Date.UTC(2011, 8, 10), 8.849], [Date.UTC(2011, 9, 9), 9.072], [Date.UTC(2011, 10, 7), 8.084], [Date.UTC(2011, 11, 4), 8.252], [Date.UTC(2012, 0, 8), 8.052], [Date.UTC(2012, 1, 5), 7.853], [Date.UTC(2012, 2, 11), 8.047], [Date.UTC(2012, 3, 8), 8.896], [Date.UTC(2012, 4, 9), 9.825], [Date.UTC(2012, 5, 10), 9.358], [Date.UTC(2012, 6, 4), 9.118], [Date.UTC(2012, 7, 10), 9.333], [Date.UTC(2012, 8, 2), 9.147], [Date.UTC(2012, 9, 5), 9.260], [Date.UTC(2012, 10, 4), 9.698], [Date.UTC(2012, 11, 2), 9.203], [Date.UTC(2013, 0, 5), 9.140], [Date.UTC(2013, 1, 8), 8.758], [Date.UTC(2013, 2, 11), 9.115], [Date.UTC(2013, 3, 7), 9.714], [Date.UTC(2013, 4, 8), 9.198], [Date.UTC(2013, 5, 9), 8.819], [Date.UTC(2013, 6, 7), 8.749], [Date.UTC(2013, 6, 12), 8.749], [Date.UTC(2013, 7, 4), 9.371], [Date.UTC(2013, 8, 11), 8.664], [Date.UTC(2013, 9, 10), 8.664], [Date.UTC(2013, 10, 9), 8.369], [Date.UTC(2013, 11, 6), 8.268], [Date.UTC(2014, 0, 1), 7.562], [Date.UTC(2014, 1, 8), 6.892], [Date.UTC(2014, 2, 3), 6.313], [Date.UTC(2014, 3, 10), 6.137], [Date.UTC(2014, 4, 7), 5.986], [Date.UTC(2014, 5, 8), 6.425], [Date.UTC(2014, 6, 6), 5.520], [Date.UTC(2014, 7, 11), 4.695], [Date.UTC(2014, 8, 1), 4.674], [Date.UTC(2014, 9, 3), 4.868], [Date.UTC(2014, 10, 8), 6.098], [Date.UTC(2014, 11, 7), 6.104], [Date.UTC(2015, 0, 6), 6.705], [Date.UTC(2015, 1, 5), 6.612], [Date.UTC(2015, 2, 7), 6.636], [Date.UTC(2015, 3, 13), 6.962], [Date.UTC(2015, 4, 13), 7.875], [Date.UTC(2015, 5, 6), 7.756], [Date.UTC(2015, 6, 12), 8.641], [Date.UTC(2015, 7, 6), 7.735], [Date.UTC(2015, 8, 5), 6.782], [Date.UTC(2015, 9, 4), 5.749], [Date.UTC(2015, 10, 7), 6.198], [Date.UTC(2015, 11, 4), 5.943], [Date.UTC(2016, 0, 2), 6.914], [Date.UTC(2016, 1, 2), 6.907], [Date.UTC(2016, 2, 3), 6.721], [Date.UTC(2016, 3, 7), 5.918], [Date.UTC(2016, 4, 6), 6.698], [Date.UTC(2016, 5, 5), 6.199], [Date.UTC(2016, 6, 4), 6.311], [Date.UTC(2016, 7, 6), 5.800], [Date.UTC(2016, 8, 8), 6.657], [Date.UTC(2016, 9, 7), 5.797], [Date.UTC(2016, 10, 5), 5.415], [Date.UTC(2016, 11, 4), 5.335], [Date.UTC(2017, 0, 7), 6.301], [Date.UTC(2017, 1, 8), 5.429], [Date.UTC(2017, 2, 7), 5.184], [Date.UTC(2017, 3, 9), 4.554], [Date.UTC(2017, 4, 6), 4.751], [Date.UTC(2017, 5, 3), 5.723], [Date.UTC(2017, 6, 7), 5.576], [Date.UTC(2017, 7, 2), 5.550], [Date.UTC(2017, 8, 6), 5.565], [Date.UTC(2017, 9, 5), 5.007], [Date.UTC(2017, 10, 12), 5.343], [Date.UTC(2017, 11, 9), 4.717], [Date.UTC(2018, 0, 3), 5.603], [Date.UTC(2018, 1, 8), 5.726], [Date.UTC(2018, 2, 7), 6.452], [Date.UTC(2018, 3, 1), 7.218], [Date.UTC(2018, 4, 6), 7.668], [Date.UTC(2018, 5, 10), 8.337], [Date.UTC(2018, 6, 7), 7.615], [Date.UTC(2018, 7, 1), 7.471], [Date.UTC(2018, 8, 3), 7.394], [Date.UTC(2018, 9, 5), 7.593], [Date.UTC(2018, 10, 8), 8.282], [Date.UTC(2018, 11, 2), 7.562], [Date.UTC(2019, 0, 4), 8.158], [Date.UTC(2019, 1, 6), 7.444], [Date.UTC(2019, 2, 2), 8.126], [Date.UTC(2019, 3, 7), 8.838], [Date.UTC(2019, 4, 4), 8.095], [Date.UTC(2019, 5, 9), 7.384], [Date.UTC(2019, 6, 6), 6.705], [Date.UTC(2019, 7, 5), 6.057], [Date.UTC(2019, 8, 9), 5.635], [Date.UTC(2019, 9, 5), 6.229]]}, {name : 'C#',data : [[Date.UTC(2001, 5, 30), 0.385], [Date.UTC(2001, 6, 30), 0.429], [Date.UTC(2001, 7, 30), 0.384], [Date.UTC(2001, 8, 28), 0.391], [Date.UTC(2001, 9, 26), 0.424], [Date.UTC(2001, 10, 28), 0.764], [Date.UTC(2001, 11, 31), 0.591], [Date.UTC(2002, 0, 30), 0.616], [Date.UTC(2002, 1, 27), 0.744], [Date.UTC(2002, 2, 29), 0.741], [Date.UTC(2002, 3, 29), 1.178], [Date.UTC(2002, 4, 29), 1.164], [Date.UTC(2002, 5, 29), 1.464], [Date.UTC(2002, 6, 31), 1.360], [Date.UTC(2002, 7, 29), 1.464], [Date.UTC(2002, 8, 29), 1.653], [Date.UTC(2002, 9, 30), 1.780], [Date.UTC(2002, 10, 29), 2.380], [Date.UTC(2002, 11, 31), 2.455], [Date.UTC(2003, 0, 31), 1.986], [Date.UTC(2003, 1, 28), 1.976], [Date.UTC(2003, 2, 31), 2.377], [Date.UTC(2003, 3, 30), 1.884], [Date.UTC(2003, 4, 30), 1.935], [Date.UTC(2003, 5, 30), 1.776], [Date.UTC(2003, 6, 31), 2.001], [Date.UTC(2003, 7, 31), 2.062], [Date.UTC(2003, 8, 30), 1.940], [Date.UTC(2003, 9, 31), 1.899], [Date.UTC(2003, 10, 30), 1.705], [Date.UTC(2003, 11, 31), 1.799], [Date.UTC(2004, 0, 31), 2.177], [Date.UTC(2004, 1, 29), 2.237], [Date.UTC(2004, 2, 31), 2.137], [Date.UTC(2004, 3, 30), 1.877], [Date.UTC(2004, 4, 30), 1.649], [Date.UTC(2004, 5, 30), 1.666], [Date.UTC(2004, 6, 31), 1.633], [Date.UTC(2004, 7, 30), 1.634], [Date.UTC(2004, 8, 30), 1.644], [Date.UTC(2004, 9, 31), 1.504], [Date.UTC(2004, 10, 30), 1.947], [Date.UTC(2004, 11, 31), 2.203], [Date.UTC(2005, 0, 31), 2.363], [Date.UTC(2005, 1, 28), 2.527], [Date.UTC(2005, 2, 31), 2.820], [Date.UTC(2005, 3, 30), 2.767], [Date.UTC(2005, 4, 31), 2.783], [Date.UTC(2005, 5, 30), 3.142], [Date.UTC(2005, 6, 31), 3.485], [Date.UTC(2005, 7, 31), 3.290], [Date.UTC(2005, 8, 30), 3.462], [Date.UTC(2005, 11, 3), 3.310], [Date.UTC(2006, 0, 4), 3.555], [Date.UTC(2006, 1, 2), 3.972], [Date.UTC(2006, 2, 1), 3.146], [Date.UTC(2006, 3, 2), 3.948], [Date.UTC(2006, 4, 1), 3.271], [Date.UTC(2006, 5, 1), 3.238], [Date.UTC(2006, 6, 2), 3.401], [Date.UTC(2006, 7, 2), 2.683], [Date.UTC(2006, 8, 2), 2.992], [Date.UTC(2006, 9, 1), 3.065], [Date.UTC(2006, 10, 2), 3.023], [Date.UTC(2006, 11, 1), 3.171], [Date.UTC(2007, 0, 2), 3.521], [Date.UTC(2007, 1, 3), 3.189], [Date.UTC(2007, 2, 3), 3.365], [Date.UTC(2007, 3, 1), 3.551], [Date.UTC(2007, 4, 5), 3.656], [Date.UTC(2007, 5, 2), 3.483], [Date.UTC(2007, 6, 2), 3.710], [Date.UTC(2007, 7, 5), 3.987], [Date.UTC(2007, 8, 2), 3.583], [Date.UTC(2007, 9, 4), 3.740], [Date.UTC(2007, 10, 4), 3.917], [Date.UTC(2007, 11, 3), 3.994], [Date.UTC(2008, 0, 3), 4.856], [Date.UTC(2008, 1, 7), 4.510], [Date.UTC(2008, 5, 1), 4.058], [Date.UTC(2008, 6, 2), 4.000], [Date.UTC(2008, 7, 3), 3.697], [Date.UTC(2008, 8, 3), 4.334], [Date.UTC(2008, 9, 6), 3.767], [Date.UTC(2008, 10, 2), 4.026], [Date.UTC(2008, 11, 3), 4.578], [Date.UTC(2009, 0, 2), 5.609], [Date.UTC(2009, 1, 1), 5.062], [Date.UTC(2009, 2, 5), 4.321], [Date.UTC(2009, 3, 7), 4.059], [Date.UTC(2009, 4, 1), 4.266], [Date.UTC(2009, 5, 4), 4.536], [Date.UTC(2009, 6, 2), 4.540], [Date.UTC(2009, 7, 1), 4.443], [Date.UTC(2009, 8, 5), 4.186], [Date.UTC(2009, 9, 2), 4.417], [Date.UTC(2009, 10, 2), 5.346], [Date.UTC(2009, 11, 2), 6.258], [Date.UTC(2010, 0, 5), 5.767], [Date.UTC(2010, 1, 7), 5.015], [Date.UTC(2010, 2, 7), 4.264], [Date.UTC(2010, 3, 5), 4.435], [Date.UTC(2010, 4, 15), 4.779], [Date.UTC(2010, 6, 6), 5.730], [Date.UTC(2010, 6, 30), 4.986], [Date.UTC(2010, 8, 11), 5.016], [Date.UTC(2010, 9, 2), 4.963], [Date.UTC(2010, 10, 3), 5.706], [Date.UTC(2010, 11, 7), 6.687], [Date.UTC(2011, 0, 2), 6.226], [Date.UTC(2011, 1, 8), 6.809], [Date.UTC(2011, 2, 8), 7.210], [Date.UTC(2011, 3, 3), 7.185], [Date.UTC(2011, 4, 2), 7.539], [Date.UTC(2011, 5, 5), 6.844], [Date.UTC(2011, 5, 27), 6.844], [Date.UTC(2011, 6, 8), 6.221], [Date.UTC(2011, 7, 3), 6.042], [Date.UTC(2011, 8, 10), 6.819], [Date.UTC(2011, 9, 9), 6.723], [Date.UTC(2011, 10, 7), 7.319], [Date.UTC(2011, 11, 4), 8.205], [Date.UTC(2012, 0, 8), 8.763], [Date.UTC(2012, 1, 5), 8.653], [Date.UTC(2012, 2, 11), 8.244], [Date.UTC(2012, 3, 8), 7.348], [Date.UTC(2012, 4, 9), 6.823], [Date.UTC(2012, 5, 10), 7.026], [Date.UTC(2012, 6, 4), 6.668], [Date.UTC(2012, 7, 10), 6.590], [Date.UTC(2012, 8, 2), 6.596], [Date.UTC(2012, 9, 5), 6.530], [Date.UTC(2012, 10, 4), 5.591], [Date.UTC(2012, 11, 2), 5.547], [Date.UTC(2013, 0, 5), 6.196], [Date.UTC(2013, 1, 8), 6.680], [Date.UTC(2013, 2, 11), 6.597], [Date.UTC(2013, 3, 7), 6.150], [Date.UTC(2013, 4, 8), 6.119], [Date.UTC(2013, 5, 9), 5.783], [Date.UTC(2013, 6, 7), 6.212], [Date.UTC(2013, 6, 12), 6.212], [Date.UTC(2013, 7, 4), 6.117], [Date.UTC(2013, 8, 11), 5.564], [Date.UTC(2013, 9, 10), 5.718], [Date.UTC(2013, 10, 9), 6.024], [Date.UTC(2013, 11, 6), 5.620], [Date.UTC(2014, 0, 1), 5.850], [Date.UTC(2014, 1, 8), 6.450], [Date.UTC(2014, 2, 3), 5.572], [Date.UTC(2014, 3, 10), 4.820], [Date.UTC(2014, 4, 7), 3.745], [Date.UTC(2014, 5, 8), 3.944], [Date.UTC(2014, 6, 6), 4.051], [Date.UTC(2014, 7, 11), 3.409], [Date.UTC(2014, 8, 1), 4.352], [Date.UTC(2014, 9, 3), 4.748], [Date.UTC(2014, 10, 8), 4.985], [Date.UTC(2014, 11, 7), 4.328], [Date.UTC(2015, 0, 6), 5.045], [Date.UTC(2015, 1, 5), 5.738], [Date.UTC(2015, 2, 7), 4.923], [Date.UTC(2015, 3, 13), 4.947], [Date.UTC(2015, 4, 13), 5.264], [Date.UTC(2015, 5, 6), 5.056], [Date.UTC(2015, 6, 12), 5.652], [Date.UTC(2015, 7, 6), 4.837], [Date.UTC(2015, 8, 5), 4.909], [Date.UTC(2015, 9, 4), 4.825], [Date.UTC(2015, 10, 7), 4.318], [Date.UTC(2015, 11, 4), 4.114], [Date.UTC(2016, 0, 2), 4.707], [Date.UTC(2016, 1, 2), 4.400], [Date.UTC(2016, 2, 3), 4.271], [Date.UTC(2016, 3, 7), 3.796], [Date.UTC(2016, 4, 6), 4.481], [Date.UTC(2016, 5, 5), 3.786], [Date.UTC(2016, 6, 4), 3.920], [Date.UTC(2016, 7, 6), 4.907], [Date.UTC(2016, 8, 8), 5.493], [Date.UTC(2016, 9, 7), 4.367], [Date.UTC(2016, 10, 5), 3.659], [Date.UTC(2016, 11, 4), 3.171], [Date.UTC(2017, 0, 7), 4.039], [Date.UTC(2017, 1, 8), 4.902], [Date.UTC(2017, 2, 7), 4.409], [Date.UTC(2017, 3, 9), 3.579], [Date.UTC(2017, 4, 6), 3.457], [Date.UTC(2017, 5, 3), 3.530], [Date.UTC(2017, 6, 7), 3.518], [Date.UTC(2017, 7, 2), 4.195], [Date.UTC(2017, 8, 6), 4.779], [Date.UTC(2017, 9, 5), 3.858], [Date.UTC(2017, 10, 12), 3.012], [Date.UTC(2017, 11, 9), 2.822], [Date.UTC(2018, 0, 3), 3.754], [Date.UTC(2018, 1, 8), 4.453], [Date.UTC(2018, 2, 7), 5.067], [Date.UTC(2018, 3, 1), 5.265], [Date.UTC(2018, 4, 6), 4.402], [Date.UTC(2018, 5, 10), 4.314], [Date.UTC(2018, 6, 7), 3.795], [Date.UTC(2018, 7, 1), 3.541], [Date.UTC(2018, 8, 3), 3.295], [Date.UTC(2018, 9, 5), 3.485], [Date.UTC(2018, 10, 8), 3.952], [Date.UTC(2018, 11, 2), 3.455], [Date.UTC(2019, 0, 4), 3.284], [Date.UTC(2019, 1, 6), 2.846], [Date.UTC(2019, 2, 2), 3.267], [Date.UTC(2019, 3, 7), 3.515], [Date.UTC(2019, 4, 4), 3.984], [Date.UTC(2019, 5, 9), 4.483], [Date.UTC(2019, 6, 6), 4.365], [Date.UTC(2019, 7, 5), 3.842], [Date.UTC(2019, 8, 9), 3.399], [Date.UTC(2019, 9, 5), 3.860]]}, {name : 'Visual Basic .NET',data : [[Date.UTC(2010, 8, 11), 0.328], [Date.UTC(2010, 9, 2), 0.325], [Date.UTC(2010, 10, 3), 0.323], [Date.UTC(2010, 11, 7), 0.259], [Date.UTC(2011, 0, 2), 0.263], [Date.UTC(2011, 1, 8), 0.588], [Date.UTC(2011, 2, 8), 0.563], [Date.UTC(2011, 3, 3), 0.342], [Date.UTC(2011, 4, 2), 0.479], [Date.UTC(2011, 5, 5), 0.434], [Date.UTC(2011, 5, 27), 0.434], [Date.UTC(2011, 6, 8), 0.484], [Date.UTC(2011, 7, 3), 0.464], [Date.UTC(2011, 8, 10), 0.309], [Date.UTC(2011, 9, 9), 0.481], [Date.UTC(2011, 10, 7), 0.533], [Date.UTC(2011, 11, 4), 0.364], [Date.UTC(2012, 0, 8), 0.479], [Date.UTC(2012, 1, 5), 0.796], [Date.UTC(2012, 2, 11), 0.784], [Date.UTC(2012, 3, 8), 0.978], [Date.UTC(2012, 4, 9), 1.274], [Date.UTC(2012, 5, 10), 1.216], [Date.UTC(2012, 6, 4), 0.917], [Date.UTC(2012, 7, 10), 0.877], [Date.UTC(2012, 8, 2), 0.840], [Date.UTC(2012, 9, 5), 0.599], [Date.UTC(2012, 10, 4), 0.769], [Date.UTC(2012, 11, 2), 0.889], [Date.UTC(2013, 0, 5), 1.043], [Date.UTC(2013, 1, 8), 1.007], [Date.UTC(2013, 2, 11), 0.888], [Date.UTC(2013, 3, 7), 1.095], [Date.UTC(2013, 4, 8), 1.131], [Date.UTC(2013, 5, 9), 1.067], [Date.UTC(2013, 6, 7), 1.254], [Date.UTC(2013, 6, 12), 1.254], [Date.UTC(2013, 7, 4), 1.320], [Date.UTC(2013, 8, 11), 1.844], [Date.UTC(2013, 9, 10), 1.933], [Date.UTC(2013, 10, 9), 1.969], [Date.UTC(2013, 11, 6), 1.688], [Date.UTC(2014, 0, 1), 1.557], [Date.UTC(2014, 1, 8), 1.798], [Date.UTC(2014, 2, 3), 1.862], [Date.UTC(2014, 3, 10), 1.748], [Date.UTC(2014, 4, 7), 1.264], [Date.UTC(2014, 5, 8), 1.914], [Date.UTC(2014, 6, 6), 1.495], [Date.UTC(2014, 7, 11), 1.310], [Date.UTC(2014, 8, 1), 1.532], [Date.UTC(2014, 9, 3), 1.751], [Date.UTC(2014, 10, 8), 2.061], [Date.UTC(2014, 11, 7), 2.235], [Date.UTC(2015, 0, 6), 1.074], [Date.UTC(2015, 1, 5), 2.026], [Date.UTC(2015, 2, 7), 2.326], [Date.UTC(2015, 3, 13), 2.126], [Date.UTC(2015, 4, 13), 2.968], [Date.UTC(2015, 5, 6), 3.168], [Date.UTC(2015, 6, 12), 2.423], [Date.UTC(2015, 7, 6), 2.708], [Date.UTC(2015, 8, 5), 2.062], [Date.UTC(2015, 9, 4), 2.462], [Date.UTC(2015, 10, 7), 2.223], [Date.UTC(2015, 11, 4), 2.390], [Date.UTC(2016, 0, 2), 2.582], [Date.UTC(2016, 1, 2), 2.454], [Date.UTC(2016, 2, 3), 2.561], [Date.UTC(2016, 3, 7), 2.273], [Date.UTC(2016, 4, 6), 2.325], [Date.UTC(2016, 5, 5), 2.353], [Date.UTC(2016, 6, 4), 2.517], [Date.UTC(2016, 7, 6), 2.518], [Date.UTC(2016, 8, 8), 2.343], [Date.UTC(2016, 9, 7), 2.660], [Date.UTC(2016, 10, 5), 3.167], [Date.UTC(2016, 11, 4), 3.302], [Date.UTC(2017, 0, 7), 2.960], [Date.UTC(2017, 1, 8), 2.824], [Date.UTC(2017, 2, 7), 3.174], [Date.UTC(2017, 3, 9), 3.251], [Date.UTC(2017, 4, 6), 3.391], [Date.UTC(2017, 5, 3), 3.111], [Date.UTC(2017, 6, 7), 3.050], [Date.UTC(2017, 7, 2), 2.569], [Date.UTC(2017, 8, 6), 1.982], [Date.UTC(2017, 9, 5), 2.735], [Date.UTC(2017, 10, 12), 2.909], [Date.UTC(2017, 11, 9), 2.471], [Date.UTC(2018, 0, 3), 3.261], [Date.UTC(2018, 1, 8), 4.072], [Date.UTC(2018, 2, 7), 4.085], [Date.UTC(2018, 3, 1), 4.947], [Date.UTC(2018, 4, 6), 4.124], [Date.UTC(2018, 5, 10), 3.762], [Date.UTC(2018, 6, 7), 4.247], [Date.UTC(2018, 7, 1), 4.762], [Date.UTC(2018, 8, 3), 5.308], [Date.UTC(2018, 9, 5), 5.884], [Date.UTC(2018, 10, 8), 6.490], [Date.UTC(2018, 11, 2), 7.127], [Date.UTC(2019, 0, 4), 6.459], [Date.UTC(2019, 1, 6), 7.095], [Date.UTC(2019, 2, 2), 6.429], [Date.UTC(2019, 3, 7), 5.795], [Date.UTC(2019, 4, 4), 5.193], [Date.UTC(2019, 5, 9), 4.624], [Date.UTC(2019, 6, 6), 4.208], [Date.UTC(2019, 7, 5), 3.695], [Date.UTC(2019, 8, 9), 3.291], [Date.UTC(2019, 9, 5), 3.745]]}, {name : 'JavaScript',data : [[Date.UTC(2001, 5, 30), 1.547], [Date.UTC(2001, 6, 30), 1.723], [Date.UTC(2001, 7, 30), 1.660], [Date.UTC(2001, 8, 28), 1.629], [Date.UTC(2001, 9, 26), 1.511], [Date.UTC(2001, 10, 28), 1.466], [Date.UTC(2001, 11, 31), 1.456], [Date.UTC(2002, 0, 30), 2.725], [Date.UTC(2002, 1, 27), 1.476], [Date.UTC(2002, 2, 29), 1.468], [Date.UTC(2002, 3, 29), 1.366], [Date.UTC(2002, 4, 29), 1.363], [Date.UTC(2002, 5, 29), 1.433], [Date.UTC(2002, 6, 31), 1.154], [Date.UTC(2002, 7, 29), 2.022], [Date.UTC(2002, 8, 29), 1.908], [Date.UTC(2002, 9, 30), 1.978], [Date.UTC(2002, 10, 29), 2.486], [Date.UTC(2002, 11, 31), 2.423], [Date.UTC(2003, 0, 31), 2.915], [Date.UTC(2003, 1, 28), 2.806], [Date.UTC(2003, 2, 31), 2.626], [Date.UTC(2003, 3, 30), 3.256], [Date.UTC(2003, 4, 30), 1.715], [Date.UTC(2003, 5, 30), 1.686], [Date.UTC(2003, 6, 31), 1.791], [Date.UTC(2003, 7, 31), 1.897], [Date.UTC(2003, 8, 30), 1.656], [Date.UTC(2003, 9, 31), 1.918], [Date.UTC(2003, 10, 30), 1.738], [Date.UTC(2003, 11, 31), 1.745], [Date.UTC(2004, 0, 31), 2.138], [Date.UTC(2004, 1, 29), 2.063], [Date.UTC(2004, 2, 31), 1.783], [Date.UTC(2004, 3, 30), 1.778], [Date.UTC(2004, 4, 30), 1.450], [Date.UTC(2004, 5, 30), 1.610], [Date.UTC(2004, 6, 31), 1.681], [Date.UTC(2004, 7, 30), 1.510], [Date.UTC(2004, 8, 30), 1.267], [Date.UTC(2004, 9, 31), 1.195], [Date.UTC(2004, 10, 30), 1.595], [Date.UTC(2004, 11, 31), 1.703], [Date.UTC(2005, 0, 31), 1.779], [Date.UTC(2005, 1, 28), 1.650], [Date.UTC(2005, 2, 31), 1.642], [Date.UTC(2005, 3, 30), 1.443], [Date.UTC(2005, 4, 31), 1.387], [Date.UTC(2005, 5, 30), 1.779], [Date.UTC(2005, 6, 31), 1.921], [Date.UTC(2005, 7, 31), 1.768], [Date.UTC(2005, 8, 30), 2.036], [Date.UTC(2005, 11, 3), 1.838], [Date.UTC(2006, 0, 4), 1.538], [Date.UTC(2006, 1, 2), 1.512], [Date.UTC(2006, 2, 1), 1.733], [Date.UTC(2006, 3, 2), 1.567], [Date.UTC(2006, 4, 1), 2.191], [Date.UTC(2006, 5, 1), 1.456], [Date.UTC(2006, 6, 2), 2.108], [Date.UTC(2006, 7, 2), 2.019], [Date.UTC(2006, 8, 2), 2.442], [Date.UTC(2006, 9, 1), 2.202], [Date.UTC(2006, 10, 2), 2.310], [Date.UTC(2006, 11, 1), 2.562], [Date.UTC(2007, 0, 2), 2.845], [Date.UTC(2007, 1, 3), 2.982], [Date.UTC(2007, 2, 3), 3.485], [Date.UTC(2007, 3, 1), 3.137], [Date.UTC(2007, 4, 5), 3.072], [Date.UTC(2007, 5, 2), 2.616], [Date.UTC(2007, 6, 2), 2.515], [Date.UTC(2007, 7, 5), 2.575], [Date.UTC(2007, 8, 2), 2.722], [Date.UTC(2007, 9, 4), 2.685], [Date.UTC(2007, 10, 4), 2.928], [Date.UTC(2007, 11, 3), 2.733], [Date.UTC(2008, 0, 3), 3.203], [Date.UTC(2008, 1, 7), 2.334], [Date.UTC(2008, 5, 1), 2.927], [Date.UTC(2008, 6, 2), 2.757], [Date.UTC(2008, 7, 3), 2.892], [Date.UTC(2008, 8, 3), 3.130], [Date.UTC(2008, 9, 6), 2.670], [Date.UTC(2008, 10, 2), 2.925], [Date.UTC(2008, 11, 3), 2.972], [Date.UTC(2009, 0, 2), 3.360], [Date.UTC(2009, 1, 1), 3.540], [Date.UTC(2009, 2, 5), 3.607], [Date.UTC(2009, 3, 7), 3.678], [Date.UTC(2009, 4, 1), 3.548], [Date.UTC(2009, 5, 4), 4.021], [Date.UTC(2009, 6, 2), 3.513], [Date.UTC(2009, 7, 1), 2.812], [Date.UTC(2009, 8, 5), 2.995], [Date.UTC(2009, 9, 2), 3.025], [Date.UTC(2009, 10, 2), 2.916], [Date.UTC(2009, 11, 2), 3.515], [Date.UTC(2010, 0, 5), 2.707], [Date.UTC(2010, 1, 7), 2.636], [Date.UTC(2010, 2, 7), 2.651], [Date.UTC(2010, 3, 5), 2.469], [Date.UTC(2010, 4, 15), 2.084], [Date.UTC(2010, 6, 6), 2.432], [Date.UTC(2010, 6, 30), 2.401], [Date.UTC(2010, 8, 11), 1.665], [Date.UTC(2010, 9, 2), 1.659], [Date.UTC(2010, 10, 3), 1.664], [Date.UTC(2010, 11, 7), 1.509], [Date.UTC(2011, 0, 2), 1.589], [Date.UTC(2011, 1, 8), 2.558], [Date.UTC(2011, 2, 8), 1.866], [Date.UTC(2011, 3, 3), 1.513], [Date.UTC(2011, 4, 2), 1.394], [Date.UTC(2011, 5, 5), 1.501], [Date.UTC(2011, 5, 27), 1.501], [Date.UTC(2011, 6, 8), 2.242], [Date.UTC(2011, 7, 3), 1.557], [Date.UTC(2011, 8, 10), 1.469], [Date.UTC(2011, 9, 9), 2.191], [Date.UTC(2011, 10, 7), 2.565], [Date.UTC(2011, 11, 4), 2.199], [Date.UTC(2012, 0, 8), 2.316], [Date.UTC(2012, 1, 5), 2.465], [Date.UTC(2012, 2, 11), 3.386], [Date.UTC(2012, 3, 8), 2.879], [Date.UTC(2012, 4, 9), 2.135], [Date.UTC(2012, 5, 10), 1.474], [Date.UTC(2012, 6, 4), 1.454], [Date.UTC(2012, 7, 10), 1.365], [Date.UTC(2012, 8, 2), 1.328], [Date.UTC(2012, 9, 5), 1.261], [Date.UTC(2012, 10, 4), 1.278], [Date.UTC(2012, 11, 2), 1.321], [Date.UTC(2013, 0, 5), 1.976], [Date.UTC(2013, 1, 8), 1.423], [Date.UTC(2013, 2, 11), 1.370], [Date.UTC(2013, 3, 7), 1.509], [Date.UTC(2013, 4, 8), 1.536], [Date.UTC(2013, 5, 9), 1.654], [Date.UTC(2013, 6, 7), 1.844], [Date.UTC(2013, 6, 12), 1.844], [Date.UTC(2013, 7, 4), 2.093], [Date.UTC(2013, 8, 11), 2.015], [Date.UTC(2013, 9, 10), 2.038], [Date.UTC(2013, 10, 9), 2.050], [Date.UTC(2013, 11, 6), 1.852], [Date.UTC(2014, 0, 1), 1.576], [Date.UTC(2014, 1, 8), 1.929], [Date.UTC(2014, 2, 3), 1.899], [Date.UTC(2014, 3, 10), 1.750], [Date.UTC(2014, 4, 7), 1.788], [Date.UTC(2014, 5, 8), 2.000], [Date.UTC(2014, 6, 6), 1.806], [Date.UTC(2014, 7, 11), 2.172], [Date.UTC(2014, 8, 1), 2.448], [Date.UTC(2014, 9, 3), 1.771], [Date.UTC(2014, 10, 8), 2.088], [Date.UTC(2014, 11, 7), 2.433], [Date.UTC(2015, 0, 6), 3.274], [Date.UTC(2015, 1, 5), 3.514], [Date.UTC(2015, 2, 7), 3.629], [Date.UTC(2015, 3, 13), 3.297], [Date.UTC(2015, 4, 13), 3.127], [Date.UTC(2015, 5, 6), 2.295], [Date.UTC(2015, 6, 12), 2.194], [Date.UTC(2015, 7, 6), 2.162], [Date.UTC(2015, 8, 5), 2.342], [Date.UTC(2015, 9, 4), 2.292], [Date.UTC(2015, 10, 7), 2.473], [Date.UTC(2015, 11, 4), 2.363], [Date.UTC(2016, 0, 2), 2.565], [Date.UTC(2016, 1, 2), 2.201], [Date.UTC(2016, 2, 3), 2.333], [Date.UTC(2016, 3, 7), 2.566], [Date.UTC(2016, 4, 6), 2.340], [Date.UTC(2016, 5, 5), 2.583], [Date.UTC(2016, 6, 4), 2.643], [Date.UTC(2016, 7, 6), 2.705], [Date.UTC(2016, 8, 8), 2.929], [Date.UTC(2016, 9, 7), 2.751], [Date.UTC(2016, 10, 5), 2.705], [Date.UTC(2016, 11, 4), 2.862], [Date.UTC(2017, 0, 7), 2.850], [Date.UTC(2017, 1, 8), 2.872], [Date.UTC(2017, 2, 7), 2.667], [Date.UTC(2017, 3, 9), 2.851], [Date.UTC(2017, 4, 6), 3.071], [Date.UTC(2017, 5, 3), 3.025], [Date.UTC(2017, 6, 7), 2.606], [Date.UTC(2017, 7, 2), 2.098], [Date.UTC(2017, 8, 6), 2.017], [Date.UTC(2017, 9, 5), 3.010], [Date.UTC(2017, 10, 12), 2.972], [Date.UTC(2017, 11, 9), 2.474], [Date.UTC(2018, 0, 3), 3.465], [Date.UTC(2018, 1, 8), 3.165], [Date.UTC(2018, 2, 7), 3.916], [Date.UTC(2018, 3, 1), 3.492], [Date.UTC(2018, 4, 6), 2.923], [Date.UTC(2018, 5, 10), 2.495], [Date.UTC(2018, 6, 7), 2.831], [Date.UTC(2018, 7, 1), 2.411], [Date.UTC(2018, 8, 3), 2.131], [Date.UTC(2018, 9, 5), 2.280], [Date.UTC(2018, 10, 8), 2.655], [Date.UTC(2018, 11, 2), 3.063], [Date.UTC(2019, 0, 4), 3.302], [Date.UTC(2019, 1, 6), 2.848], [Date.UTC(2019, 2, 2), 2.426], [Date.UTC(2019, 3, 7), 2.507], [Date.UTC(2019, 4, 4), 2.690], [Date.UTC(2019, 5, 9), 2.716], [Date.UTC(2019, 6, 6), 2.304], [Date.UTC(2019, 7, 5), 2.258], [Date.UTC(2019, 8, 9), 2.128], [Date.UTC(2019, 9, 5), 2.076]]}, {name : 'SQL',data : [[Date.UTC(2001, 5, 30), 2.956], [Date.UTC(2001, 6, 30), 2.766], [Date.UTC(2001, 7, 30), 2.383], [Date.UTC(2001, 8, 28), 2.361], [Date.UTC(2001, 9, 26), 2.242], [Date.UTC(2001, 10, 28), 1.840], [Date.UTC(2001, 11, 31), 1.870], [Date.UTC(2002, 0, 30), 1.943], [Date.UTC(2002, 1, 27), 2.090], [Date.UTC(2002, 2, 29), 2.062], [Date.UTC(2002, 3, 29), 2.333], [Date.UTC(2002, 4, 29), 2.359], [Date.UTC(2002, 5, 29), 2.527], [Date.UTC(2002, 6, 31), 2.660], [Date.UTC(2002, 7, 29), 2.654], [Date.UTC(2002, 8, 29), 2.544], [Date.UTC(2002, 9, 30), 2.638], [Date.UTC(2002, 10, 29), 2.380], [Date.UTC(2002, 11, 31), 2.519], [Date.UTC(2003, 0, 31), 2.559], [Date.UTC(2003, 1, 28), 2.505], [Date.UTC(2003, 2, 31), 2.562], [Date.UTC(2003, 3, 30), 2.649], [Date.UTC(2003, 4, 30), 3.119], [Date.UTC(2003, 5, 30), 3.040], [Date.UTC(2003, 6, 31), 2.994], [Date.UTC(2003, 7, 31), 3.244], [Date.UTC(2003, 8, 30), 3.718], [Date.UTC(2003, 9, 31), 3.697], [Date.UTC(2003, 10, 30), 2.926], [Date.UTC(2003, 11, 31), 3.095], [Date.UTC(2004, 0, 31), 3.513], [Date.UTC(2004, 1, 29), 3.098], [Date.UTC(2004, 2, 31), 2.968], [Date.UTC(2004, 3, 30), 2.443], [Date.UTC(2018, 1, 8), 2.356], [Date.UTC(2018, 2, 7), 2.686], [Date.UTC(2018, 3, 1), 2.650], [Date.UTC(2018, 4, 6), 1.987], [Date.UTC(2018, 5, 10), 2.339], [Date.UTC(2018, 6, 7), 2.334], [Date.UTC(2018, 7, 1), 2.316], [Date.UTC(2018, 8, 3), 2.062], [Date.UTC(2018, 9, 5), 2.038], [Date.UTC(2018, 10, 8), 1.844], [Date.UTC(2018, 11, 2), 2.184], [Date.UTC(2019, 0, 4), 2.277], [Date.UTC(2019, 1, 6), 1.900], [Date.UTC(2019, 2, 2), 1.926], [Date.UTC(2019, 3, 7), 2.272], [Date.UTC(2019, 4, 4), 2.555], [Date.UTC(2019, 5, 9), 2.224], [Date.UTC(2019, 6, 6), 1.977], [Date.UTC(2019, 7, 5), 1.625], [Date.UTC(2019, 8, 9), 1.944], [Date.UTC(2019, 9, 5), 1.935]]}, {name : 'PHP',data : [[Date.UTC(2001, 5, 30), 1.897], [Date.UTC(2001, 6, 30), 1.378], [Date.UTC(2001, 7, 30), 1.553], [Date.UTC(2001, 8, 28), 1.552], [Date.UTC(2001, 9, 26), 1.778], [Date.UTC(2001, 10, 28), 4.874], [Date.UTC(2001, 11, 31), 7.274], [Date.UTC(2002, 0, 30), 8.274], [Date.UTC(2002, 1, 27), 7.442], [Date.UTC(2002, 2, 29), 7.029], [Date.UTC(2002, 3, 29), 5.049], [Date.UTC(2002, 4, 29), 5.215], [Date.UTC(2002, 5, 29), 5.178], [Date.UTC(2002, 6, 31), 6.498], [Date.UTC(2002, 7, 29), 5.349], [Date.UTC(2002, 8, 29), 4.960], [Date.UTC(2002, 9, 30), 5.275], [Date.UTC(2002, 10, 29), 7.298], [Date.UTC(2002, 11, 31), 7.611], [Date.UTC(2003, 0, 31), 4.493], [Date.UTC(2003, 1, 28), 4.009], [Date.UTC(2003, 2, 31), 4.606], [Date.UTC(2003, 3, 30), 4.533], [Date.UTC(2003, 4, 30), 4.783], [Date.UTC(2003, 5, 30), 3.833], [Date.UTC(2003, 6, 31), 4.679], [Date.UTC(2003, 7, 31), 5.436], [Date.UTC(2003, 8, 30), 5.795], [Date.UTC(2003, 9, 31), 3.570], [Date.UTC(2003, 10, 30), 5.736], [Date.UTC(2003, 11, 31), 6.311], [Date.UTC(2004, 0, 31), 7.257], [Date.UTC(2004, 1, 29), 7.631], [Date.UTC(2004, 2, 31), 9.761], [Date.UTC(2004, 3, 30), 7.171], [Date.UTC(2004, 4, 30), 8.710], [Date.UTC(2004, 5, 30), 10.323], [Date.UTC(2004, 6, 31), 10.427], [Date.UTC(2004, 7, 30), 8.231], [Date.UTC(2004, 8, 30), 7.421], [Date.UTC(2004, 9, 31), 7.586], [Date.UTC(2004, 10, 30), 11.448], [Date.UTC(2004, 11, 31), 9.482], [Date.UTC(2005, 0, 31), 10.278], [Date.UTC(2005, 1, 28), 9.410], [Date.UTC(2005, 2, 31), 8.724], [Date.UTC(2005, 3, 30), 9.201], [Date.UTC(2005, 4, 31), 7.974], [Date.UTC(2005, 5, 30), 9.172], [Date.UTC(2005, 6, 31), 7.873], [Date.UTC(2005, 7, 31), 8.895], [Date.UTC(2005, 8, 30), 9.671], [Date.UTC(2005, 11, 3), 9.629], [Date.UTC(2006, 0, 4), 9.402], [Date.UTC(2006, 1, 2), 8.916], [Date.UTC(2006, 2, 1), 9.948], [Date.UTC(2006, 3, 2), 10.880], [Date.UTC(2006, 4, 1), 10.220], [Date.UTC(2006, 5, 1), 9.593], [Date.UTC(2006, 6, 2), 10.350], [Date.UTC(2006, 7, 2), 9.639], [Date.UTC(2006, 8, 2), 9.128], [Date.UTC(2006, 9, 1), 9.862], [Date.UTC(2006, 10, 2), 9.209], [Date.UTC(2006, 11, 1), 8.537], [Date.UTC(2007, 0, 2), 7.943], [Date.UTC(2007, 1, 3), 8.847], [Date.UTC(2007, 2, 3), 9.458], [Date.UTC(2007, 3, 1), 8.639], [Date.UTC(2007, 4, 5), 8.738], [Date.UTC(2007, 5, 2), 8.871], [Date.UTC(2007, 6, 2), 8.653], [Date.UTC(2007, 7, 5), 9.696], [Date.UTC(2007, 8, 2), 10.204], [Date.UTC(2007, 9, 4), 9.498], [Date.UTC(2007, 10, 4), 8.687], [Date.UTC(2007, 11, 3), 8.393], [Date.UTC(2008, 0, 3), 9.195], [Date.UTC(2008, 1, 7), 9.890], [Date.UTC(2008, 5, 1), 10.206], [Date.UTC(2008, 6, 2), 9.525], [Date.UTC(2008, 7, 3), 9.349], [Date.UTC(2008, 8, 3), 9.243], [Date.UTC(2008, 9, 6), 8.612], [Date.UTC(2008, 10, 2), 8.940], [Date.UTC(2008, 11, 3), 9.128], [Date.UTC(2009, 0, 2), 8.882], [Date.UTC(2009, 1, 1), 8.779], [Date.UTC(2009, 2, 5), 9.485], [Date.UTC(2009, 3, 7), 9.888], [Date.UTC(2009, 4, 1), 9.921], [Date.UTC(2009, 5, 4), 9.675], [Date.UTC(2009, 6, 2), 9.269], [Date.UTC(2009, 7, 1), 9.390], [Date.UTC(2009, 8, 5), 10.156], [Date.UTC(2009, 9, 2), 10.355], [Date.UTC(2009, 10, 2), 10.176], [Date.UTC(2009, 11, 2), 9.770], [Date.UTC(2010, 0, 5), 10.071], [Date.UTC(2010, 1, 7), 10.001], [Date.UTC(2010, 2, 7), 9.908], [Date.UTC(2010, 3, 5), 9.662], [Date.UTC(2010, 4, 15), 9.073], [Date.UTC(2010, 6, 6), 8.566], [Date.UTC(2010, 6, 30), 9.180], [Date.UTC(2010, 8, 11), 8.370], [Date.UTC(2010, 9, 2), 8.323], [Date.UTC(2010, 10, 3), 7.813], [Date.UTC(2010, 11, 7), 7.511], [Date.UTC(2011, 0, 2), 7.835], [Date.UTC(2011, 1, 8), 6.973], [Date.UTC(2011, 2, 8), 6.566], [Date.UTC(2011, 3, 3), 6.584], [Date.UTC(2011, 4, 2), 6.508], [Date.UTC(2011, 5, 5), 6.602], [Date.UTC(2011, 5, 27), 6.602], [Date.UTC(2011, 6, 8), 6.179], [Date.UTC(2011, 7, 3), 6.134], [Date.UTC(2011, 8, 10), 6.596], [Date.UTC(2011, 9, 9), 6.818], [Date.UTC(2011, 10, 7), 6.096], [Date.UTC(2011, 11, 4), 6.001], [Date.UTC(2012, 0, 8), 5.703], [Date.UTC(2012, 1, 5), 5.641], [Date.UTC(2012, 2, 11), 5.555], [Date.UTC(2012, 3, 8), 5.288], [Date.UTC(2012, 4, 9), 5.711], [Date.UTC(2012, 5, 10), 5.287], [Date.UTC(2012, 6, 4), 5.012], [Date.UTC(2012, 7, 10), 5.524], [Date.UTC(2012, 8, 2), 5.614], [Date.UTC(2012, 9, 5), 5.669], [Date.UTC(2012, 10, 4), 5.732], [Date.UTC(2012, 11, 2), 5.541], [Date.UTC(2013, 0, 5), 5.546], [Date.UTC(2013, 1, 8), 5.074], [Date.UTC(2013, 2, 11), 4.809], [Date.UTC(2013, 3, 7), 5.428], [Date.UTC(2013, 4, 8), 5.784], [Date.UTC(2013, 5, 9), 5.987], [Date.UTC(2013, 6, 7), 7.186], [Date.UTC(2013, 6, 12), 7.186], [Date.UTC(2013, 7, 4), 6.694], [Date.UTC(2013, 8, 11), 6.430], [Date.UTC(2013, 9, 10), 6.094], [Date.UTC(2013, 10, 9), 5.379], [Date.UTC(2013, 11, 6), 5.281], [Date.UTC(2014, 0, 1), 4.608], [Date.UTC(2014, 1, 8), 4.219], [Date.UTC(2014, 2, 3), 3.698], [Date.UTC(2014, 3, 10), 2.773], [Date.UTC(2014, 4, 7), 3.386], [Date.UTC(2014, 5, 8), 2.848], [Date.UTC(2014, 6, 6), 2.916], [Date.UTC(2014, 7, 11), 2.864], [Date.UTC(2014, 8, 1), 3.121], [Date.UTC(2014, 9, 3), 2.942], [Date.UTC(2014, 10, 8), 3.043], [Date.UTC(2014, 11, 7), 2.746], [Date.UTC(2015, 0, 6), 3.784], [Date.UTC(2015, 1, 5), 3.170], [Date.UTC(2015, 2, 7), 3.997], [Date.UTC(2015, 3, 13), 3.009], [Date.UTC(2015, 4, 13), 2.720], [Date.UTC(2015, 5, 6), 2.868], [Date.UTC(2015, 6, 12), 2.893], [Date.UTC(2015, 7, 6), 2.729], [Date.UTC(2015, 8, 5), 2.530], [Date.UTC(2015, 9, 4), 2.561], [Date.UTC(2015, 10, 7), 3.248], [Date.UTC(2015, 11, 4), 2.792], [Date.UTC(2016, 0, 2), 2.706], [Date.UTC(2016, 1, 2), 2.770], [Date.UTC(2016, 2, 3), 2.768], [Date.UTC(2016, 3, 7), 2.994], [Date.UTC(2016, 4, 6), 2.992], [Date.UTC(2016, 5, 5), 3.227], [Date.UTC(2016, 6, 4), 3.272], [Date.UTC(2016, 7, 6), 3.173], [Date.UTC(2016, 8, 8), 2.847], [Date.UTC(2016, 9, 7), 2.741], [Date.UTC(2016, 10, 5), 3.125], [Date.UTC(2016, 11, 4), 2.919], [Date.UTC(2017, 0, 7), 2.564], [Date.UTC(2017, 1, 8), 3.072], [Date.UTC(2017, 2, 7), 3.009], [Date.UTC(2017, 3, 9), 3.376], [Date.UTC(2017, 4, 6), 2.693], [Date.UTC(2017, 5, 3), 2.774], [Date.UTC(2017, 6, 7), 3.093], [Date.UTC(2017, 7, 2), 2.293], [Date.UTC(2017, 8, 6), 2.210], [Date.UTC(2017, 9, 5), 2.790], [Date.UTC(2017, 10, 12), 1.897], [Date.UTC(2017, 11, 9), 1.590], [Date.UTC(2018, 0, 3), 2.532], [Date.UTC(2018, 1, 8), 3.420], [Date.UTC(2018, 2, 7), 4.010], [Date.UTC(2018, 3, 1), 4.218], [Date.UTC(2018, 4, 6), 3.321], [Date.UTC(2018, 5, 10), 2.881], [Date.UTC(2018, 6, 7), 2.832], [Date.UTC(2018, 7, 1), 2.925], [Date.UTC(2018, 8, 3), 2.775], [Date.UTC(2018, 9, 5), 2.794], [Date.UTC(2018, 10, 8), 2.376], [Date.UTC(2018, 11, 2), 2.442], [Date.UTC(2019, 0, 4), 2.680], [Date.UTC(2019, 1, 6), 2.271], [Date.UTC(2019, 2, 2), 2.420], [Date.UTC(2019, 3, 7), 2.239], [Date.UTC(2019, 4, 4), 2.489], [Date.UTC(2019, 5, 9), 2.567], [Date.UTC(2019, 6, 6), 2.167], [Date.UTC(2019, 7, 5), 2.075], [Date.UTC(2019, 8, 9), 1.863], [Date.UTC(2019, 9, 5), 1.909]]}, {name : 'Objective-C',data : [[Date.UTC(2001, 9, 26), 0.034], [Date.UTC(2001, 10, 28), 0.101], [Date.UTC(2001, 11, 31), 0.035], [Date.UTC(2002, 0, 30), 0.034], [Date.UTC(2002, 1, 27), 0.038], [Date.UTC(2002, 2, 29), 0.038], [Date.UTC(2002, 3, 29), 0.031], [Date.UTC(2002, 4, 29), 0.031], [Date.UTC(2002, 5, 29), 0.036], [Date.UTC(2002, 6, 31), 0.030], [Date.UTC(2002, 7, 29), 0.038], [Date.UTC(2002, 11, 31), 0.037], [Date.UTC(2003, 0, 31), 0.050], [Date.UTC(2003, 1, 28), 0.047], [Date.UTC(2003, 2, 31), 0.049], [Date.UTC(2003, 3, 30), 0.047], [Date.UTC(2003, 4, 30), 0.067], [Date.UTC(2003, 5, 30), 0.081], [Date.UTC(2003, 6, 31), 0.082], [Date.UTC(2003, 7, 31), 0.081], [Date.UTC(2003, 8, 30), 0.098], [Date.UTC(2003, 9, 31), 0.119], [Date.UTC(2003, 10, 30), 0.072], [Date.UTC(2003, 11, 31), 0.080], [Date.UTC(2004, 0, 31), 0.074], [Date.UTC(2004, 1, 29), 0.069], [Date.UTC(2004, 2, 31), 0.075], [Date.UTC(2004, 3, 30), 0.068], [Date.UTC(2004, 4, 30), 0.069], [Date.UTC(2004, 5, 30), 0.066], [Date.UTC(2004, 6, 31), 0.065], [Date.UTC(2004, 7, 30), 0.059], [Date.UTC(2004, 8, 30), 0.087], [Date.UTC(2004, 9, 31), 0.083], [Date.UTC(2004, 10, 30), 0.098], [Date.UTC(2004, 11, 31), 0.092], [Date.UTC(2005, 0, 31), 0.081], [Date.UTC(2005, 1, 28), 0.077], [Date.UTC(2005, 2, 31), 0.063], [Date.UTC(2005, 3, 30), 0.083], [Date.UTC(2005, 4, 31), 0.097], [Date.UTC(2005, 5, 30), 0.105], [Date.UTC(2005, 6, 31), 0.076], [Date.UTC(2005, 7, 31), 0.066], [Date.UTC(2005, 8, 30), 0.071], [Date.UTC(2005, 11, 3), 0.065], [Date.UTC(2006, 0, 4), 0.067], [Date.UTC(2006, 1, 2), 0.064], [Date.UTC(2006, 2, 1), 0.067], [Date.UTC(2006, 3, 2), 0.070], [Date.UTC(2006, 4, 1), 0.072], [Date.UTC(2006, 5, 1), 0.087], [Date.UTC(2006, 6, 2), 0.090], [Date.UTC(2006, 7, 2), 0.080], [Date.UTC(2006, 8, 2), 0.090], [Date.UTC(2006, 9, 1), 0.089], [Date.UTC(2006, 10, 2), 0.090], [Date.UTC(2006, 11, 1), 0.097], [Date.UTC(2007, 0, 2), 0.095], [Date.UTC(2007, 1, 3), 0.108], [Date.UTC(2007, 2, 3), 0.113], [Date.UTC(2007, 3, 1), 0.112], [Date.UTC(2007, 4, 5), 0.106], [Date.UTC(2007, 5, 2), 0.088], [Date.UTC(2007, 6, 2), 0.080], [Date.UTC(2007, 7, 5), 0.074], [Date.UTC(2007, 8, 2), 0.084], [Date.UTC(2007, 9, 4), 0.091], [Date.UTC(2007, 10, 4), 0.092], [Date.UTC(2007, 11, 3), 0.086], [Date.UTC(2008, 0, 3), 0.071], [Date.UTC(2008, 1, 7), 0.069], [Date.UTC(2008, 5, 1), 0.096], [Date.UTC(2008, 6, 2), 0.085], [Date.UTC(2008, 7, 3), 0.104], [Date.UTC(2008, 8, 3), 0.105], [Date.UTC(2008, 9, 6), 0.086], [Date.UTC(2008, 10, 2), 0.149], [Date.UTC(2008, 11, 3), 0.229], [Date.UTC(2009, 0, 2), 0.138], [Date.UTC(2009, 1, 1), 0.181], [Date.UTC(2009, 2, 5), 0.177], [Date.UTC(2009, 3, 7), 0.134], [Date.UTC(2009, 4, 1), 0.134], [Date.UTC(2009, 5, 4), 0.123], [Date.UTC(2009, 6, 2), 0.509], [Date.UTC(2009, 7, 1), 0.612], [Date.UTC(2009, 8, 5), 0.585], [Date.UTC(2009, 9, 2), 1.164], [Date.UTC(2009, 10, 2), 0.893], [Date.UTC(2009, 11, 2), 1.159], [Date.UTC(2010, 0, 5), 1.379], [Date.UTC(2010, 1, 7), 1.779], [Date.UTC(2010, 2, 7), 1.970], [Date.UTC(2010, 3, 5), 2.288], [Date.UTC(2010, 4, 15), 2.363], [Date.UTC(2010, 6, 6), 2.498], [Date.UTC(2010, 6, 30), 3.150], [Date.UTC(2010, 8, 11), 3.368], [Date.UTC(2010, 9, 2), 3.706], [Date.UTC(2010, 10, 3), 3.191], [Date.UTC(2010, 11, 7), 3.242], [Date.UTC(2011, 0, 2), 3.011], [Date.UTC(2011, 1, 8), 2.571], [Date.UTC(2011, 2, 8), 3.518], [Date.UTC(2011, 3, 3), 4.386], [Date.UTC(2011, 4, 2), 5.010], [Date.UTC(2011, 5, 5), 4.437], [Date.UTC(2011, 5, 27), 4.437], [Date.UTC(2011, 6, 8), 5.181], [Date.UTC(2011, 7, 3), 5.494], [Date.UTC(2011, 8, 10), 6.158], [Date.UTC(2011, 9, 9), 6.245], [Date.UTC(2011, 10, 7), 5.983], [Date.UTC(2011, 11, 4), 6.805], [Date.UTC(2012, 0, 8), 6.917], [Date.UTC(2012, 1, 5), 7.062], [Date.UTC(2012, 2, 11), 7.737], [Date.UTC(2012, 3, 8), 8.236], [Date.UTC(2012, 4, 9), 8.309], [Date.UTC(2012, 5, 10), 9.094], [Date.UTC(2012, 6, 4), 9.335], [Date.UTC(2012, 7, 10), 9.540], [Date.UTC(2012, 8, 2), 9.770], [Date.UTC(2012, 9, 5), 9.477], [Date.UTC(2012, 10, 4), 10.383], [Date.UTC(2012, 11, 2), 11.116], [Date.UTC(2013, 0, 5), 10.283], [Date.UTC(2013, 1, 8), 9.803], [Date.UTC(2013, 2, 11), 10.230], [Date.UTC(2013, 3, 7), 9.598], [Date.UTC(2013, 4, 8), 10.428], [Date.UTC(2013, 5, 9), 10.356], [Date.UTC(2013, 6, 7), 10.248], [Date.UTC(2013, 6, 12), 10.248], [Date.UTC(2013, 7, 4), 8.082], [Date.UTC(2013, 8, 11), 8.561], [Date.UTC(2013, 9, 10), 8.992], [Date.UTC(2013, 10, 9), 9.406], [Date.UTC(2013, 11, 6), 10.202], [Date.UTC(2014, 0, 1), 11.095], [Date.UTC(2014, 1, 8), 11.341], [Date.UTC(2014, 2, 3), 12.143], [Date.UTC(2014, 3, 10), 12.875], [Date.UTC(2014, 4, 7), 11.791], [Date.UTC(2014, 5, 8), 10.934], [Date.UTC(2014, 6, 6), 10.294], [Date.UTC(2014, 7, 11), 9.552], [Date.UTC(2014, 8, 1), 9.935], [Date.UTC(2014, 9, 3), 10.096], [Date.UTC(2014, 10, 8), 9.063], [Date.UTC(2014, 11, 7), 9.130], [Date.UTC(2015, 0, 6), 6.953], [Date.UTC(2015, 1, 5), 6.024], [Date.UTC(2015, 2, 7), 6.688], [Date.UTC(2015, 3, 13), 5.890], [Date.UTC(2015, 4, 13), 5.393], [Date.UTC(2015, 5, 6), 4.339], [Date.UTC(2015, 6, 12), 3.344], [Date.UTC(2015, 7, 6), 3.195], [Date.UTC(2015, 8, 5), 1.821], [Date.UTC(2015, 9, 4), 1.419], [Date.UTC(2015, 10, 7), 1.426], [Date.UTC(2015, 11, 4), 1.357], [Date.UTC(2016, 0, 2), 1.074], [Date.UTC(2016, 1, 2), 1.403], [Date.UTC(2016, 2, 3), 1.461], [Date.UTC(2016, 3, 7), 1.711], [Date.UTC(2016, 4, 6), 1.597], [Date.UTC(2016, 5, 5), 1.704], [Date.UTC(2016, 6, 4), 1.881], [Date.UTC(2016, 7, 6), 1.884], [Date.UTC(2016, 8, 8), 1.849], [Date.UTC(2016, 9, 7), 2.263], [Date.UTC(2016, 10, 5), 2.246], [Date.UTC(2016, 11, 4), 2.325], [Date.UTC(2017, 0, 7), 1.617], [Date.UTC(2017, 1, 8), 1.536], [Date.UTC(2017, 2, 7), 1.997], [Date.UTC(2017, 3, 9), 2.163], [Date.UTC(2017, 4, 6), 2.101], [Date.UTC(2017, 5, 3), 1.957], [Date.UTC(2017, 6, 7), 1.896], [Date.UTC(2017, 7, 2), 1.505], [Date.UTC(2017, 8, 6), 1.509], [Date.UTC(2017, 9, 5), 1.513], [Date.UTC(2017, 10, 12), 1.412], [Date.UTC(2017, 11, 9), 1.497], [Date.UTC(2018, 0, 3), 1.860], [Date.UTC(2018, 1, 8), 1.130], [Date.UTC(2018, 2, 7), 1.774], [Date.UTC(2018, 3, 1), 1.250], [Date.UTC(2018, 4, 6), 0.939], [Date.UTC(2018, 5, 10), 1.181], [Date.UTC(2018, 6, 7), 1.453], [Date.UTC(2018, 7, 1), 1.358], [Date.UTC(2018, 8, 3), 1.509], [Date.UTC(2018, 9, 5), 1.202], [Date.UTC(2018, 10, 8), 1.476], [Date.UTC(2018, 11, 2), 1.477], [Date.UTC(2019, 0, 4), 1.781], [Date.UTC(2019, 1, 6), 1.447], [Date.UTC(2019, 2, 2), 1.681], [Date.UTC(2019, 3, 7), 1.505], [Date.UTC(2019, 4, 4), 1.626], [Date.UTC(2019, 5, 9), 1.391], [Date.UTC(2019, 6, 6), 1.686], [Date.UTC(2019, 7, 5), 1.690], [Date.UTC(2019, 8, 9), 1.840], [Date.UTC(2019, 9, 5), 1.501]]}\n",
"\"\"\""
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 187
},
"colab_type": "code",
"id": "V7sn72jJXk_N",
"outputId": "a85166d8-04fa-4d5f-823c-1b33f9cafebf"
},
"outputs": [],
"source": [
"str_data = str_data.replace(\"{\", \"\")\n",
"str_data = str_data.replace(\"}\", \"\")\n",
"str_data = str_data.strip()\n",
"str_data = str_data.replace(\"Date.UTC\", \"\\n\")\n",
"str_data = str_data.replace(\"name\", \"\\nname\")\n",
"patterns = str_data.split(\"\\n\")\n",
"\n",
"for item in patterns[:10]:\n",
" print(item)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "hS5C88nn06wn"
},
"outputs": [],
"source": [
"import re\n",
"import pandas as pd\n",
"\n",
"def match_numbers(line):\n",
" nums = re.findall(\"(\\d\\d\\d\\d), *(\\d+), *(\\d+)\\), *(\\d+\\.\\d+)\", line)\n",
" if nums == []:\n",
" return None\n",
" else:\n",
" return nums[0]\n",
"\n",
"def match_language_name(line):\n",
" name = re.findall(\"name *: *\\' *(.+) *\\'\", line)\n",
" if name == []:\n",
" return None\n",
" else:\n",
" return name[0] + \" \"\n",
"\n",
"def convert_date(nums):\n",
" y, m, d = int(nums[0]), int(nums[1])+1, int(nums[2])\n",
" value = float(nums[3])\n",
" date = \"{}-{}\".format(y, str(m).zfill(2))\n",
" return date, value\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "XPzlT_-S2iAD"
},
"outputs": [],
"source": [
"my_data = dict()\n",
"current_name = \"\"\n",
"\n",
"for line in patterns:\n",
" nums = match_numbers(line)\n",
" name = match_language_name(line)\n",
" if name != None:\n",
" current_name = name\n",
" my_data[current_name] = dict()\n",
" if nums != None:\n",
" date, value = convert_date(nums)\n",
" my_data[current_name][date] = value\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 187
},
"colab_type": "code",
"id": "kc6qd9OQ4HXc",
"outputId": "21fc1a96-c54d-4535-bed2-15a735cfbf71"
},
"outputs": [],
"source": [
"key_dates = [key for key in my_data['Java ']]\n",
"key_dates.sort()\n",
"\n",
"for name in my_data:\n",
" print(\"{} - {}\".format(name, len(my_data[name])))\n",
"\n",
"def construct_data_series(language, key_dates):\n",
" data = []\n",
" for date in key_dates:\n",
" if date not in language and len(data) == 0:\n",
" data.append( 0.0 )\n",
" elif date not in language and len(data) > 0:\n",
" data.append( data[-1] )\n",
" else:\n",
" data.append( language[date] )\n",
" return data\n",
"\n",
"data_frame = dict()\n",
"data_frame['dates'] = key_dates\n",
"for language_name in my_data:\n",
" lst = construct_data_series(my_data[language_name], key_dates)\n",
" data_frame[language_name] = lst\n",
"\n",
"data_frame = pd.DataFrame(data_frame)\n",
"data_frame = data_frame.set_index('dates')"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 235
},
"colab_type": "code",
"id": "v_k6Y0en_432",
"outputId": "2b977b46-2780-4dd6-a687-30dd95337db5"
},
"outputs": [],
"source": [
"data_frame.head()"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "XkBiprwY9lcK"
},
"outputs": [],
"source": [
"import plotly.graph_objects as go"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "-AgCy5E7Aw1k"
},
"outputs": [],
"source": [
"def data_series_to_frame(series):\n",
" df = pd.DataFrame(series)\n",
" df.index.names = ['language']\n",
" df.reset_index(level=0, inplace=True)\n",
" return df\n",
"\n",
"def construct_frames(data_frame):\n",
" frames = []\n",
" colors = ['IndianRed', 'SandyBrown', 'MediumVioletRed', 'Gold', 'LightSeaGreen', \\\n",
" 'DeepSkyBlue', 'SlateBlue', 'LightPink', 'BurlyWood', 'MediumSeaGreen']\n",
" for i in range(len(data_frame)):\n",
" df = data_series_to_frame( data_frame.iloc[i] )\n",
" df['colors'] = colors\n",
" date = df.columns[1]\n",
" df.sort_values(by=[date], ascending=True, inplace=True)\n",
" bar = go.Bar(x=df[date], y=df['language'], text=df[date], orientation='h', marker_color=df['colors'], textposition='outside')\n",
" frame = go.Frame(data=bar, layout=go.Layout(title_text=date))\n",
" frames.append(frame)\n",
" return frames\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"colab": {},
"colab_type": "code",
"id": "wyLZIuy_GpiN"
},
"outputs": [],
"source": [
"animation_frames = construct_frames(data_frame)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 542
},
"colab_type": "code",
"id": "ZDGrgkxKjX-q",
"outputId": "61755df2-9379-4439-ed60-055fed18fca1"
},
"outputs": [],
"source": [
"df = data_series_to_frame( data_frame.iloc[0] )\n",
"colors = ['IndianRed', 'SandyBrown', 'MediumVioletRed', 'Gold', 'LightSeaGreen', \\\n",
" 'DeepSkyBlue', 'SlateBlue', 'LightPink', 'BurlyWood', 'MediumSeaGreen']\n",
"df['colors'] = colors\n",
"date = df.columns[1]\n",
"df.sort_values(by=[date], ascending=True, inplace=True)\n",
"initial_bar = go.Bar(x=df[date], y=df['language'], text=df[date], orientation='h', marker_color=df['colors'], textposition='outside')\n",
"\n",
"fig = go.Figure(initial_bar)\n",
"fig.show()"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"colab": {
"base_uri": "https://localhost:8080/",
"height": 617
},
"colab_type": "code",
"id": "HKF1ONYiJhxl",
"outputId": "6c036666-8539-4f39-ef65-2d6a06a0ce5f"
},
"outputs": [],
"source": [
"buttons = {\n",
" \"type\": \"buttons\",\n",
" \"direction\": \"right\",\n",
" \"pad\": {\"r\": 80, \"t\": 0},\n",
" \"buttons\": [{\"label\": \"Play\", \"method\": \"animate\", \"args\": [\n",
" None, \n",
" dict(frame=dict(duration=600, redraw=True),\n",
" transition=dict(duration=1800, easing=\"linear-in-out\"),\n",
" fromcurrent=True,\n",
" mode='immediate')\n",
" ]}]\n",
"}\n",
"\n",
"fig = go.Figure(\n",
" data = [ initial_bar ],\n",
" layout = go.Layout(\n",
" title=\"2001-06\",\n",
" titlefont = {\"size\": 36},\n",
" font = {\"family\": 'monospace', \"size\": 15},\n",
" width=1100, height=600,\n",
" updatemenus = [buttons],\n",
" xaxis=dict(showgrid=True, zeroline=False, automargin=True),\n",
" yaxis=dict(showgrid=True, zeroline=False, automargin=True),\n",
" ),\n",
" frames = animation_frames,\n",
")\n",
"\n",
"fig.show()"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"colab": {
"collapsed_sections": [],
"name": "Programming_Language_Index.ipynb",
"provenance": []
},
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.5.4"
}
},
"nbformat": 4,
"nbformat_minor": 1
}