CINXE.COM

Statistics Portal

<!DOCTYPE html> <html lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <!-- Meta, title, CSS, favicons, etc. --> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="icon" href="assets/images/favicon.png" type="image/ico" /> <title>Statistics Portal </title> <!-- Bootstrap --> <link href="https://stats.afrinic.net/vendors/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet"> <!-- Font Awesome --> <link href="https://stats.afrinic.net/vendors/font-awesome/css/font-awesome.min.css" rel="stylesheet"> <!-- NProgress --> <link href="https://stats.afrinic.net/vendors/nprogress/nprogress.css" rel="stylesheet"> <!-- iCheck --> <link href="https://stats.afrinic.net/vendors/iCheck/skins/flat/green.css" rel="stylesheet"> <link rel="stylesheet" href="https://stats.afrinic.net/assets/css/style4.css" rel="stylesheet"> <!-- bootstrap-progressbar --> <link href="https://stats.afrinic.net/vendors/bootstrap-progressbar/css/bootstrap-progressbar-3.3.4.min.css" rel="stylesheet"> <!-- JQVMap --> <link href="https://stats.afrinic.net/vendors/jqvmap/dist/jqvmap.min.css" rel="stylesheet"/> <!-- bootstrap-daterangepicker --> <link href="https://stats.afrinic.net/vendors/daterangepicker/dist/daterangepicker.css" rel="stylesheet"> <!-- Custom Theme Style --> <link href="https://stats.afrinic.net/build/css/custom.css" rel="stylesheet"> <link href="https://stats.afrinic.net/assets/afrinic/css/stats.css" rel="stylesheet"> <script type="text/javascript" src="https://stats.afrinic.net/assets/js/d3.js"></script> <script type="text/javascript" src="https://stats.afrinic.net/assets/js/queue.js"></script> <script type="text/javascript" src="https://stats.afrinic.net/assets/js/crossfilter.js"></script> <script type="text/javascript" src="https://stats.afrinic.net/assets/js/dc.js"></script> <script type="text/javascript" src="https://stats.afrinic.net/assets/bower_components/rgbcolor/index.js"></script> <!--<script src="https://code.jquery.com/jquery-1.12.4.js"></script>--> <script src="https://stats.afrinic.net/vendors/daterangepicker/dist/vendor.js"></script> <!-- <script src=""></script>--> <script src="https://stats.afrinic.net/vendors/bootstrap/dist/js/bootstrap.min.js"></script> <script src="https://stats.afrinic.net/assets/js/bootstrap-select.min.js"></script> <!-- bootstrap-daterangepicker --> <script src="https://stats.afrinic.net/vendors/moment/min/moment.min.js"></script> <script src="https://stats.afrinic.net/vendors/moment/min/moment.min.js"></script> <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script> <script src="https://stats.afrinic.net/vendors/daterangepicker/dist/daterangepicker.min.js"></script> <link href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.13.1/css/bootstrap-select.min.css" rel="stylesheet"> <link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css"> <script type="text/javascript" src="//cdn.datatables.net/1.10.16/js/jquery.dataTables.min.js"></script> <script type="text/javascript"> // var _start = new Date , _end = new Date; function shuffle(a) { var j, x, i; for (i = a.length - 1; i > 0; i--) { j = Math.floor(Math.random() * (i + 1)); x = a[i]; a[i] = a[j]; a[j] = x; } return a; } var colors = shuffle(["#3366cc", "#dc3912", "#ff9900", "#109618", "#990099", "#0099c6", "#dd4477", "#66aa00", "#b82e2e", "#316395", "#994499", "#22aa99", "#aaaa11", "#6633cc", "#e67300", "#8b0707", "#651067", "#329262", "#5574a6", "#3b3eac"]), //rangeColors = ["#e59866", "#dc7633", " #d35400 ", "#ba4a00", "#a04000", "#873600", "#6e2c00", "#784212", "#943126","#78281f"] rangeColors = ["#AC96CA","#9E84C0","#9072B5","#8260AB","#754FA1","#683D96","#583690","#47308A","#372A83","#27247C"] </script> <!-- Matomo --> <script type="text/javascript"> var _paq = window._paq || []; /* tracker methods like "setCustomDimension" should be called before "trackPageView" */ _paq.push(["setDocumentTitle", document.domain + "/" + document.title]); _paq.push(["setCookieDomain", "*.stats.afrinic.net"]); _paq.push(["setDomains", ["*.stats.afrinic.net"]]); _paq.push(['trackPageView']); _paq.push(['enableLinkTracking']); (function() { var u="https://analytics.afrinic.net/"; _paq.push(['setTrackerUrl', u+'matomo.php']); _paq.push(['setSiteId', '10']); var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s); })(); </script> <noscript><p><img src="https://analytics.afrinic.net/matomo.php?idsite=10&amp;rec=1" style="border:0;" alt="" /></p></noscript> <!-- End Matomo Code --> <!-- Global site tag (gtag.js) - Google Analytics --> <script async src=“https://www.googletagmanager.com/gtag/js?id=UA-50123650-7”></script> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag(‘js’, new Date()); gtag(‘config’, ‘UA-50123650-7’); </script> <script> !function(e,l,v,i,o,n){e[i]||(e[i]={}),e[i].account_id=n;var g,h;g=l.createElement(v),g.type="text/javascript",g.async=1,g.src=o+n,h=l.getElementsByTagName(v)[0],h.parentNode.insertBefore(g,h);e[i].q=[];e[i].on=function(z,y){e[i].q.push([z,y])}}(window,document,"script","_elev","https://cdn.elev.io/sdk/bootloader/v4/elevio-bootloader.js?cid=","5e2a59719bd1a"); </script> <link rel="stylesheet" href="//cdn.datatables.net/1.10.16/css/jquery.dataTables.min.css"> <script type="text/javascript" src="https://stats.afrinic.net/assets/afrinic/js/common.js"></script> </head> <body class="nav-md"> <div id="overlay"> <div id="loading">Please wait...</div> </div> <div class="container body"> <div class="main_container"> <div class="col-md-3 left_col"> <div class="left_col scroll-view"> <div class="navbar nav_title" style="border: 0;"> <a href="https://stats.afrinic.net/" class="site_title"><i class="fa fa-line-chart"></i> <span>Statistics Portal</span></a> </div> <div class="clearfix"></div> <!-- sidebar menu --> <div id="sidebar-menu" class="main_menu_side hidden-print main_menu"> <div class="menu_section"> <ul class="nav side-menu"> <li><a><i class="fa fa-area-chart"></i> IPv4 <span class="fa fa-chevron-down"></span></a> <ul class="nav child_menu"> <li><a href="https://stats.afrinic.net/ipv4/">IPv4</a></li> <li><a href="https://stats.afrinic.net/ipv4/exhaustion/">Exhaustion</a></li> <li><a href="https://stats.afrinic.net/ipv4/exhaustion/ipv4_available">Available IPv4 (Over time)</a></li> <li><a href="https://stats.afrinic.net/ipv4/exhaustion/ipv4_pool">Available IPv4 (pool)</a></li> <li><a href="https://stats.afrinic.net/ipv4/exhaustion/ipv4_iana">Available IPv4 (usage) </a></li> <li><a href="https://stats.afrinic.net/ipv4/exhaustion/ipv4_prefixes">Available IPv4 (prefixes) </a></li> </ul> </li> <li><a><i class="fa fa-area-chart"></i> ASN <span class="fa fa-chevron-down"></span></a> <ul class="nav child_menu"> <li><a href="https://stats.afrinic.net/asn/">ASN</a></li> </ul> </li> <li><a><i class="fa fa-area-chart"></i> Member <span class="fa fa-chevron-down"></span></a> <ul class="nav child_menu"> <li><a href="https://stats.afrinic.net/member/">Member</a></li> </ul> </li> <li><a><i class="fa fa-area-chart"></i> Country <span class="fa fa-chevron-down"></span></a> <ul class="nav child_menu"> <li><a href="https://stats.afrinic.net/country/">Country</a></li> </ul> </li> <li><a><i class="fa fa-area-chart"></i> IPv6 <span class="fa fa-chevron-down"></span></a> <ul class="nav child_menu"> <li><a href="https://stats.afrinic.net/ipv6/">IPv6</a></li> </ul> </li> <li><a><i class="fa fa-area-chart"></i> IRR <span class="fa fa-chevron-down"></span></a> <ul class="nav child_menu"> <li><a href="https://stats.afrinic.net/irr/">IRR</a></li> </ul> </li> <li><a><i class="fa fa-area-chart"></i> RPKI <span class="fa fa-chevron-down"></span></a> <ul class="nav child_menu"> <li><a href="https://stats.afrinic.net/rpki/">RPKI</a></li> </ul> </li> <li><a><i class="fa fa-area-chart"></i> RDNS <span class="fa fa-chevron-down"></span></a> <ul class="nav child_menu"> <li><a href="https://stats.afrinic.net/dnssec/">DNSSEC</a></li> <li><a href="https://stats.afrinic.net/lamerdns/">Lame Delegation</a></li> </ul> </li> <li><a><i class="fa fa-area-chart"></i> Closures <span class="fa fa-chevron-down"></span></a> <ul class="nav child_menu"> <li><a href="https://stats.afrinic.net/closures/">Closures</a></li> </ul> </li> <li><a><i class="fa fa-area-chart"></i> Contact Updates <span class="fa fa-chevron-down"></span></a> <ul class="nav child_menu"> <li><a href="https://stats.afrinic.net/contact/">Contact updates</a></li> </ul> </li> <li><a><i class="fa fa-area-chart"></i> FTP Stats files <span class="fa fa-chevron-down"></span></a> <ul class="nav child_menu"> <li><a href="ftp://ftp.afrinic.net/pub/stats/afrinic/" target="_blank">Extended Stats</a></li> <li><a href="ftp://ftp.afrinic.net/pub/stats/afrinic/transfers/" target="_blank">Transfer Stats</a></li> </ul> </li> <li><a><i class="fa fa-area-chart"></i> AIRRS <span class="fa fa-chevron-down"></span></a> <ul class="nav child_menu"> <li><a href="https://airrs.afrinic.net" target="_blank">AIRRS</a></li> </ul> </li> </ul> </div> </div> <!-- /sidebar menu --> </div> </div> <!-- top navigation --> <div class="top_nav"> <div class="nav_menu"> <nav> <div class="nav toggle navbar-left "> <a id="menu_toggle"><i class="fa fa-bars"></i></a> </div> <div class="brand-right pull-right"> <a class="navbar-brand" href="https://afrinic.net"><img src="https://afrinic.net/ast/img/afrinic-logo/afrinic_logo_retina.png" alt="AFRINIC"></a> </div> </nav> </div> </div> <!-- /top navigation --><div class="right_col" role="main"> <div class="mtb-1"></div> <div class="row"> <div class="well col-md-12"> <div class="col-md-10"><h2>AFRINIC Closures statistics</h2> </div> <div class="col-md-2"><a href="https://stats.afrinic.net/index.php/download/closuresdata.zip" class="btn btn-primary">Download raw data</a></div> </div> </div> <div class="row"> <div class="col-md-12 col-sm-12 col-xs-12"> <div class="well"> <a href="javascript:dateDim.filterAll();dc.filterAll();dc.renderAll();" class="btn btn-raised btn-primary">Reset All</a> </div> </div> </div> <div class="row row-centered "> <div class="col-md-4 col-sm-12"> <div class="well dc-data-count3 col-centered dashboard_graph tile_stats_count lame-card"> <div class="x_title"> <span class="count_top"><i class="fa fa-calculator"></i> IPv4 resource reclamation</span> </div> <p>&nbsp;</p> <span class="filter-count count" style="font-size:30px;"></span> </div> </div> <div class="col-md-8 col-sm-12"> <div class="well dashboard_graph col-centered" id="ipv4StatusChart"> <div class="x_title"> <span class="chart-title"><strong><i class="fa fa-pie-chart"></i> IPv4 resource reclamation by Type </strong></span> </div> <div class="download-link pull-right"> <div class="dropdown"> <button class="dropbtn"><i class="fa fa-ellipsis-v" aria-hidden="true"></i></button> <div class="dropdown-content"> <a href="#" onclick="saveAsImage('ipv4StatusChart.png','ipv4StatusChart');"> Save png</a> <a href="#" onclick="saveAsImage('ipv4StatusChart.jpeg','ipv4StatusChart');"> Save jpeg</a> </div> </div> </div> </div> </div> </div> <div class="row row-centered"> <div class="col-md-12"> <div class="well dashboard_graph col-centered" id="ipv4PrefixChart"> <div class="x_title"> <span class="chart-title"><strong><i class="fa fa-bar-chart"></i> IPv4 resource reclamation by prefix length </strong></span> </div> <div class="download-link pull-right"> <div class="dropdown"> <button class="dropbtn"><i class="fa fa-ellipsis-v" aria-hidden="true"></i></button> <div class="dropdown-content"> <a href="#" onclick="saveAsImage('ipv4PrefixChart.png','ipv4PrefixChart');"> Save png</a> <a href="#" onclick="saveAsImage('ipv4PrefixChart.jpeg','ipv4PrefixChart');"> Save jpeg</a> </div> </div> </div> </div> <div class="well dashboard_graph col-centered" id="ipv4CumulativeChart"> <div class="x_title"> <span class="chart-title"><strong><i class="fa fa-bar-chart"></i> IPv4 resource reclamation by year </strong></span> </div> <div class="download-link pull-right"> <div class="dropdown"> <button class="dropbtn"><i class="fa fa-ellipsis-v" aria-hidden="true"></i></button> <div class="dropdown-content"> <a href="#" onclick="saveAsImage('ipv4CumulativeChart.png','ipv4CumulativeChart');"> Save png</a> <a href="#" onclick="saveAsImage('ipv4CumulativeChart.jpeg','ipv4CumulativeChart');"> Save jpeg</a> </div> </div> </div> </div> </div> </div> <div class="row row-centered "> <div class="col-md-4 col-sm-12"> <div class="well dc-data-count4 col-centered dashboard_graph lame-card"> <div class="x_title"> <span class="count_top"><i class="fa fa-calculator"></i> IPv6 resource reclamation</span> </div> <p>&nbsp;</p> <span class="filter-count count" style="font-size:30px;"></span> </div> </div> <div class="col-md-4 col-sm-12"> <div class="well dashboard_graph col-centered" id="ipv6StatusChart"> <div class="x_title"> <span class="chart-title"><strong><i class="fa fa-pie-chart"></i> IPv6 resource reclamation by Type </strong></span> </div> <div class="download-link pull-right"> <div class="dropdown"> <button class="dropbtn"><i class="fa fa-ellipsis-v" aria-hidden="true"></i></button> <div class="dropdown-content"> <a href="#" onclick="saveAsImage('ipv6StatusChart.png','ipv4Stipv6StatusChartatusChart');"> Save png</a> <a href="#" onclick="saveAsImage('ipv6StatusChart.jpeg','ipv6StatusChart');"> Save jpeg</a> </div> </div> </div> </div> </div> <div class="col-md-4 col-sm-12"> <div class="well dashboard_graph col-centered" id="ipv6PrefixChart"> <div class="x_title"> <span class="chart-title"><strong><i class="fa fa-pie-chart"></i> IPv6 resource reclamation by prefix length </strong></span> </div> <div class="download-link pull-right"> <div class="dropdown"> <button class="dropbtn"><i class="fa fa-ellipsis-v" aria-hidden="true"></i></button> <div class="dropdown-content"> <a href="#" onclick="saveAsImage('ipv6PrefixChart.png','ipv6PrefixChart');"> Save png</a> <a href="#" onclick="saveAsImage('ipv6PrefixChart.jpeg','ipv6PrefixChart');"> Save jpeg</a> </div> </div> </div> </div> </div> </div> <div class="row row-centered"> <div class="col-md-12"> <div class="well dashboard_graph col-centered" id="ipv6CumulativeChart"> <div class="x_title"> <span class="chart-title"><strong><i class="fa fa-bar-chart"></i> IPv6 resource reclamation over the years </strong></span> </div> <div class="download-link pull-right"> <div class="dropdown"> <button class="dropbtn"><i class="fa fa-ellipsis-v" aria-hidden="true"></i></button> <div class="dropdown-content"> <a href="#" onclick="saveAsImage('ipv6CumulativeChart.png','ipv6CumulativeChart');"> Save png</a> <a href="#" onclick="saveAsImage('ipv6CumulativeChart.jpeg','ipv6CumulativeChart');"> Save jpeg</a> </div> </div> </div> </div> </div> </div> <div class="row row-centered"> <div class="col-md-4 col-sm-12"> <div class="well dc-data-count2 col-centered dashboard_graph lame-card"> <div class="x_title"> <span class="count_top"><i class="fa fa-calculator"></i> ASN resource reclamation</span> </div> <p>&nbsp;</p> <span class="filter-count count" style="font-size:30px;"></span> </div> </div> <div class="col-md-8 col-sm-12"> <div class="well col-centered dashboard_graph" id="asnStatusChart"> <div class="x_title"> <span class="chart-title"><strong><i class="fa fa-pie-chart"></i> ASN resource reclamation by Types </strong></span> </div> <div class="download-link pull-right"> <div class="dropdown"> <button class="dropbtn"><i class="fa fa-ellipsis-v" aria-hidden="true"></i></button> <div class="dropdown-content"> <a href="#" onclick="saveAsImage('asnStatusChart.png','asnStatusChart');"> Save png</a> <a href="#" onclick="saveAsImage('asnStatusChart.jpeg','asnStatusChart');"> Save jpeg</a> </div> </div> </div> </div> </div> </div> <div class="row row-centered"> <div class="col-md-12"> <div class="well dashboard_graph col-centered" id="ASNCumulativeChart"> <div class="x_title"> <span class="chart-title"><strong><i class="fa fa-bar-chart"></i> ASN resource reclamation over the years </strong></span> </div> <div class="download-link pull-right"> <div class="dropdown"> <button class="dropbtn"><i class="fa fa-ellipsis-v" aria-hidden="true"></i></button> <div class="dropdown-content"> <a href="#" onclick="saveAsImage('ASNCumulativeChart.png','ASNCumulativeChart'););"> Save png</a> <a href="#" onclick="saveAsImage('ASNCumulativeChart.jpeg','ASNCumulativeChart');"> Save jpeg</a> </div> </div> </div> </div> <div class="well dashboard_graph col-centered" id="orgCumulativeChart"> <div class="x_title"> <span class="chart-title"><strong><i class="fa fa-bar-chart"></i> Members with reclaimed resources over the years </strong></span> </div> <div class="download-link pull-right"> <div class="dropdown"> <button class="dropbtn"><i class="fa fa-ellipsis-v" aria-hidden="true"></i></button> <div class="dropdown-content"> <a href="#" onclick="saveAsImage('orgCumulativeChart.png','orgCumulativeChart');"> Save png</a> <a href="#" onclick="saveAsImage('orgCumulativeChart.jpeg','orgCumulativeChart');"> Save jpeg</a> </div> </div> </div> </div> </div> </div> </div> <script type="text/javascript"> // date picker dropdown //image export function saveAsImage(name, id) { var options = { selectorRemap: function(s) { return s.replace(/\.dc-chart/g, ''); } }; var svg = $('#'+id).find('svg')[0]; saveSvgAsPng(svg, name,options); } var asnTotalClosures = dc.dataCount('.dc-data-count2'); var asnStatusChart = dc.pieChart('#asnStatusChart'); var ASNCumulativeChart = dc.compositeChart('#ASNCumulativeChart'); var ipv4TotalClosures = dc.dataCount('.dc-data-count3'); var ipv4StatusChart = dc.pieChart('#ipv4StatusChart'); var ipv4CumulativeChart = dc.compositeChart('#ipv4CumulativeChart'); var ipv4PrefixChart = dc.barChart('#ipv4PrefixChart'); var ipv6TotalClosures = dc.dataCount('.dc-data-count4'); var ipv6StatusChart = dc.pieChart('#ipv6StatusChart'); var ipv6CumulativeChart = dc.compositeChart('#ipv6CumulativeChart'); var orgCumulativeChart = dc.compositeChart('#orgCumulativeChart'); var ipv6PrefixChart = dc.pieChart('#ipv6PrefixChart'); var ndx; var ndx1; var ndx2; var q = queue() .defer(d3.json, 'https://stats.afrinic.net/assets/data/asnClosures.json') .defer(d3.json, 'https://stats.afrinic.net/assets/data/ipv4Closures.json') .defer(d3.json, 'https://stats.afrinic.net/assets/data/ipv6Closures.json') .defer(d3.json, 'https://stats.afrinic.net/assets/data/orgClosures.json') q.await(function(err, data,data1,data2,data3){ if(err){ throw err; } data.forEach(function(d){ d.total =+ d.total; }); data1.forEach(function(d){ d.total =+ d.total; }); data2.forEach(function(d){ d.total =+ d.total; }); data3.forEach(function(d){ d.total =+ d.total; }); ndx = crossfilter(data); ndx1= crossfilter(data1); ndx2= crossfilter(data2); ndx3= crossfilter(data3); var totalAsnClosures = ndx.groupAll().reduceSum(function(d){return d.total;}); var asnStatusDim=ndx.dimension(dc.pluck('t_status')); var asnYearDim=ndx.dimension(dc.pluck('t_year')); var asnStatusGroup = asnStatusDim.group().reduceSum(function(d){return d.total;}); var asnYearGroup = asnYearDim.group().reduceSum(function(d){return d.total;}); var asnYearComGroup = accumulate_group(asnYearGroup); var totalipv4Closures = ndx1.groupAll().reduceSum(function(d){return d.total;}); var ipv4StatusDim=ndx1.dimension(dc.pluck('t_status')); var ipv4YearDim=ndx1.dimension(dc.pluck('t_year')); var ipv4PrefixlenDim=ndx1.dimension(dc.pluck('prefix_length')); var ipv4StatusGroup = ipv4StatusDim.group().reduceSum(function(d){return d.total;}); var ipv4YearGroup = ipv4YearDim.group().reduceSum(function(d){return d.total;}); var ipv4PrefixlenGroup = ipv4PrefixlenDim.group().reduceSum(function(d){return d.total;}); var ipv4YearComGroup = accumulate_group(ipv4YearGroup); var totalipv6Closures = ndx2.groupAll().reduceSum(function(d){return d.total;}); var ipv6StatusDim=ndx2.dimension(dc.pluck('t_status')); var ipv6YearDim=ndx2.dimension(dc.pluck('t_year')); var ipv6PrefixlenDim=ndx2.dimension(dc.pluck('prefix_length')); var ipv6StatusGroup = ipv6StatusDim.group().reduceSum(function(d){return d.total;}); var ipv6YearGroup = ipv6YearDim.group().reduceSum(function(d){return d.total;}); var ipv6PrefixlenGroup = ipv6PrefixlenDim.group().reduceSum(function(d){return d.total;}); var ipv6YearComGroup = accumulate_group(ipv6YearGroup); var orgYearDim=ndx3.dimension(dc.pluck('reg_year')); var orgYearGroup = orgYearDim.group().reduceSum(function(d){return d.total;}); var orgYearComGroup = accumulate_group(orgYearGroup); function accumulate_group(source_group) { return { all:function () { var cumulate = 0; return source_group.all().map(function(d) { cumulate += d.value; return {key:d.key, value:cumulate}; }); } }; } asnTotalClosures .dimension(ndx) .group(totalAsnClosures); ipv4TotalClosures .dimension(ndx1) .group(totalipv4Closures); ipv6TotalClosures .dimension(ndx1) .group(totalipv6Closures); asnStatusChart .dimension(asnStatusDim) .group(asnStatusGroup) .width(null) .height(220) .slicesCap(5) .innerRadius(60) .colors(d3.scale.ordinal().range(colors)) .drawPaths(false) .legend(dc.legend().itemWidth(100).legendWidth(200)) .on('pretransition', function(chart) { asnStatusChart.selectAll('text.pie-slice').text(function(d) { return dc.utils.printSingleValue((d.endAngle - d.startAngle) / (2*Math.PI) * 100) + '%'; }) }); ASNCumulativeChart .width(null) .height(285) .margins({top: 40, right: 60, bottom: 40, left: 45}) .dimension(asnYearDim) .group(asnYearGroup) .elasticY(true) ._rangeBandPadding(1) .yAxisPadding(5) .title(function(d) { return d.key + '[' + this.layer + ']: ' + d.value; }) .legend(dc.legend().x(50).y(270).itemWidth(140).horizontal(true)) .colors(d3.scale.ordinal().range(colors)) .x(d3.scale.ordinal().domain(asnYearDim)) .xUnits(dc.units.ordinal) .compose([ dc.barChart(ASNCumulativeChart) .group(asnYearComGroup,"Cumulative") .elasticY(false) .gap(5) .alwaysUseRounding(true) .centerBar(true) .renderLabel(true) .colors(d3.scale.ordinal().range(colors)) .x(d3.scale.ordinal().domain(asnYearDim)) .xUnits(dc.units.ordinal) , dc.barChart(ASNCumulativeChart).group(asnYearGroup,"Annual") .elasticY(false) .gap(5) .colors('#512e5f') .renderLabel(true) .alwaysUseRounding(true) .centerBar(true) .x(d3.scale.ordinal().domain(asnYearDim)) .xUnits(dc.units.ordinal) ]); ASNCumulativeChart.xAxis().tickSize(0); ipv4StatusChart .dimension(ipv4StatusDim) .group(ipv4StatusGroup) .width(null) .height(220) .slicesCap(5) .innerRadius(60) .colors(d3.scale.ordinal().range(colors)) .drawPaths(false) .legend(dc.legend().itemWidth(100).legendWidth(200)) .on('pretransition', function(chart) { ipv4StatusChart.selectAll('text.pie-slice').text(function(d) { return dc.utils.printSingleValue((d.endAngle - d.startAngle) / (2*Math.PI) * 100) + '%'; }) }); ipv4CumulativeChart .width(null) .height(285) .margins({top: 40, right: 60, bottom: 40, left: 45}) .dimension(ipv4YearDim) .group(ipv4YearGroup) .elasticY(true) ._rangeBandPadding(1) .yAxisPadding(5) .title(function(d) { return d.key + '[' + this.layer + ']: ' + d.value; }) .legend(dc.legend().x(50).y(270).itemWidth(140).horizontal(true)) .colors(d3.scale.ordinal().range(colors)) .x(d3.scale.ordinal().domain(ipv4YearDim)) .xUnits(dc.units.ordinal) .compose([ dc.barChart(ipv4CumulativeChart) .group(ipv4YearComGroup,"Cumulative") .elasticY(false) .gap(5) .alwaysUseRounding(true) .centerBar(true) .renderLabel(true) .colors(d3.scale.ordinal().range(colors)) .x(d3.scale.ordinal().domain(ipv4YearDim)) .xUnits(dc.units.ordinal) , dc.barChart(ipv4CumulativeChart).group(ipv4YearGroup,"Annual") .elasticY(false) .gap(5) .colors('#512e5f') .renderLabel(true) .alwaysUseRounding(true) .centerBar(true) .x(d3.scale.ordinal().domain(ipv4YearDim)) .xUnits(dc.units.ordinal) ]); ipv4CumulativeChart.xAxis().tickSize(0); ipv4PrefixChart .width(null) .height(280) .margins({top: 40, right: 60, bottom: 20, left: 45}) .dimension(ipv4PrefixlenDim) .group(ipv4PrefixlenGroup) .centerBar(false) .elasticY(true) .colors(d3.scale.ordinal().range(colors)) .x(d3.scale.ordinal().domain(ipv4YearDim)) .xUnits(dc.units.ordinal) .gap(1) .alwaysUseRounding(true); ipv4PrefixChart.xAxis().tickSize(0); ipv6StatusChart .dimension(ipv6StatusDim) .group(ipv6StatusGroup) .width(null) .height(220) .slicesCap(5) .innerRadius(60) .colors(d3.scale.ordinal().range(colors)) .drawPaths(false) .legend(dc.legend().itemWidth(100).legendWidth(200)) .on('pretransition', function(chart) { ipv6StatusChart.selectAll('text.pie-slice').text(function(d) { return dc.utils.printSingleValue((d.endAngle - d.startAngle) / (2*Math.PI) * 100) + '%'; }) }); ipv6CumulativeChart .width(null) .height(285) .margins({top: 40, right: 60, bottom: 40, left: 45}) .dimension(ipv6YearDim) .group(ipv6YearGroup) .elasticY(true) ._rangeBandPadding(1) .yAxisPadding(5) .title(function(d) { return d.key + '[' + this.layer + ']: ' + d.value; }) .legend(dc.legend().x(50).y(270).itemWidth(140).horizontal(true)) //.legend(dc.legend().x(970).y(5).itemHeight(12).gap(5)) .colors(d3.scale.ordinal().range(colors)) .x(d3.scale.ordinal().domain(ipv6YearDim)) .xUnits(dc.units.ordinal) .compose([ dc.barChart(ipv6CumulativeChart) .group(ipv6YearComGroup,"Cumulative") .elasticY(false) .gap(5) .alwaysUseRounding(true) .centerBar(true) .renderLabel(true) .colors(d3.scale.ordinal().range(colors)) .x(d3.scale.ordinal().domain(ipv6YearDim)) .xUnits(dc.units.ordinal) , dc.barChart(ipv6CumulativeChart).group(ipv6YearGroup,"Annual") .elasticY(false) .gap(5) .colors('#512e5f') .renderLabel(true) .alwaysUseRounding(true) .centerBar(true) .x(d3.scale.ordinal().domain(ipv6YearDim)) .xUnits(dc.units.ordinal) ]); ipv6CumulativeChart.xAxis().tickSize(0); ipv6PrefixChart .dimension(ipv6PrefixlenDim) .group(ipv6PrefixlenGroup) .width(null) .height(220) .slicesCap(5) .innerRadius(60) .colors(d3.scale.ordinal().range(colors)) .drawPaths(false) .legend(dc.legend().x(50).y(270).itemWidth(140).horizontal(true)) .on('pretransition', function(chart) { ipv6PrefixChart.selectAll('text.pie-slice').text(function(d) { return dc.utils.printSingleValue((d.endAngle - d.startAngle) / (2*Math.PI) * 100) + '%'; }) }); orgCumulativeChart .width(null) .height(285) .margins({top: 40, right: 60, bottom: 40, left: 45}) .dimension(orgYearDim) .group(orgYearGroup) .elasticY(true) ._rangeBandPadding(1) .yAxisPadding(5) .title(function(d) { return d.key + '[' + this.layer + ']: ' + d.value; }) //.legend(dc.legend().x(970).y(5).itemHeight(12).gap(5)) .legend(dc.legend().x(50).y(270).itemWidth(140).horizontal(true)) .colors(d3.scale.ordinal().range(colors)) .x(d3.scale.ordinal().domain(orgYearDim)) .xUnits(dc.units.ordinal) .compose([ dc.barChart(orgCumulativeChart) .group(orgYearComGroup,"Cumulative") .elasticY(false) .gap(5) .alwaysUseRounding(true) .colors(d3.scale.ordinal().range(colors)) .centerBar(true) .renderLabel(true) .x(d3.scale.ordinal().domain(orgYearDim)) .xUnits(dc.units.ordinal) , dc.barChart(orgCumulativeChart).group(orgYearGroup,"Annual") .elasticY(false) .gap(5) .colors('#512e5f') .renderLabel(true) .alwaysUseRounding(true) .centerBar(true) .x(d3.scale.ordinal().domain(orgYearDim)) .xUnits(dc.units.ordinal) ]); orgCumulativeChart.xAxis().tickSize(0); dc.renderAll(); }); </script></div> </div> </div> </div> <!-- footer content --> <footer> <div class="row"> <div class="col-md-8 hidden-xs"> <p class="footer-link"><a href="https://status.afrinic.net/" target="_blank" rel="help noopener" title="AFRINIC Online Services Status">Service Status</a> | <a href="https://afrinic.net/changelog" rev="contents">Changelog</a> | <a href="https://afrinic.net/support">FAQs &amp; Support</a></p> </div> <div class="pull-right"> © AFRINIC </div> </div> </div> <div class="clearfix"></div> </footer> <!-- /footer content --> </div> </div> <!-- jQuery --> <!-- <script src=""></script>--> <!-- Bootstrap --> <script src="https://stats.afrinic.net/vendors/bootstrap/dist/js/bootstrap.min.js"></script> <!-- FastClick --> <script src="https://stats.afrinic.net/vendors/fastclick/lib/fastclick.js"></script> <!-- NProgress --> <script src="https://stats.afrinic.net/vendors/nprogress/nprogress.js"></script> <!-- Chart.js --> <script src="https://stats.afrinic.net/vendors/Chart.js/dist/Chart.min.js"></script> <!-- gauge.js --> <script src="https://stats.afrinic.net/vendors/gauge.js/dist/gauge.min.js"></script> <!-- bootstrap-progressbar --> <script src="https://stats.afrinic.net/vendors/bootstrap-progressbar/bootstrap-progressbar.min.js"></script> <!-- iCheck --> <script src="https://stats.afrinic.net/vendors/iCheck/icheck.min.js"></script> <!-- Skycons --> <script src="https://stats.afrinic.net/vendors/skycons/skycons.js"></script> <!-- Flot --> <script src="https://stats.afrinic.net/vendors/Flot/jquery.flot.js"></script> <script src="https://stats.afrinic.net/vendors/Flot/jquery.flot.pie.js"></script> <script src="https://stats.afrinic.net/vendors/Flot/jquery.flot.time.js"></script> <script src="https://stats.afrinic.net/vendors/Flot/jquery.flot.stack.js"></script> <script src="https://stats.afrinic.net/vendors/Flot/jquery.flot.resize.js"></script> <!-- Flot plugins --> <script src="https://stats.afrinic.net/vendors/flot.orderbars/js/jquery.flot.orderBars.js"></script> <script src="https://stats.afrinic.net/vendors/flot-spline/js/jquery.flot.spline.min.js"></script> <script src="https://stats.afrinic.net/vendors/flot.curvedlines/curvedLines.js"></script> <!-- DateJS --> <script src="https://stats.afrinic.net/vendors/DateJS/build/date.js"></script> <!-- JQVMap --> <script src="https://stats.afrinic.net/vendors/jqvmap/dist/jquery.vmap.js"></script> <script src="https://stats.afrinic.net/vendors/jqvmap/dist/maps/jquery.vmap.world.js"></script> <script src="https://stats.afrinic.net/vendors/jqvmap/examples/js/jquery.vmap.sampledata.js"></script> <script type="text/javascript" src="https://stats.afrinic.net/assets/js/saveSvgAsPng.js"></script> <script type="text/javascript" src="https://stats.afrinic.net/assets/js/canvg.js"></script> <!-- Custom Theme Scripts --> <script src="https://stats.afrinic.net/build/js/custom.js"></script> <script> !function(e,l,v,i,o,n){e[i]||(e[i]={}),e[i].account_id=n;var g,h;g=l.createElement(v),g.type="text/javascript",g.async=1,g.src=o+n,h=l.getElementsByTagName(v)[0],h.parentNode.insertBefore(g,h);e[i].q=[];e[i].on=function(z,y){e[i].q.push([z,y])}}(window,document,"script","_elev","https://cdn.elev.io/sdk/bootloader/v4/elevio-bootloader.js?cid=","5e2a59719bd1a"); /* * For passing user information, please see * https://api-docs.elevio.help/en/articles/24 */ </script> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10