<html>
<head>
<meta charset="utf-8"/>
<title>人口推計</title>
<script src="https://www.google.com/jsapi"></script>
<script src="jquery.js"></script>
<script src="credit.js"></script>
<script src="fusiontable.js"></script>
<script src="sample.js"></script>
<script src="line.js"></script>
</head>
<body onload="sample()">
<input type="button" value="検索" onClick="line()" />
<div id="chart" style="width: 800px; height: 500px;">準備中</div>
</body>
</html>
ax=new Array();
bx=new Array();
cx=new Array();
var subnumber,creditnumber;
cr=new Array();
cn=new Array();
cnumber=new Array();
function credit() {
var query = "SELECT * FROM " +
'12cR5LFBmu6jrlpMabUGFVHVLtWGkM0G0dHXjqiQ';
var encodedQuery = encodeURIComponent(query);
var url = ['https://www.googleapis.com/fusiontables/v1/query'];
url.push('?sql=' + encodedQuery);
url.push('&key=AIzaSyAH0WCAXRIdHdbI-6bnMSN4kVDDZZmGyqY');
url.push('&callback=?');
var sx;
sx=0;
$.ajax({
url: url.join(''),
dataType: 'jsonp',
success: function (data) {
var rows = data['rows'];
for (var i in rows) {
sx=sx+1;
ax[sx]= rows[i][0];
bx[sx]= rows[i][1];
cx[sx]= rows[i][2];
}
subnumber=sx;
select();
$("#chart").text("準備完了");
}
});
}
function select(){
var s,sx,tx;
creditnumber=0;
for(s=1;s<subnumber+1;s++){
if(ax[s]>creditnumber)creditnumber=ax[s];
}
for(s=1;s<creditnumber+1;s++){
tx=0;
cr[s]=new Array();
cn[s]=new Array();
for(sx=1;sx<subnumber+1;sx++){
if(ax[sx]==s)tx=tx+1;
if(ax[sx]==s)cr[s][tx]=bx[sx];
if(ax[sx]==s)cn[s][tx]=cx[sx];
}
cnumber[s]=tx;
}
}
a=new Array();
b=new Array();
c=new Array();
d=new Array();
e=new Array();
v=new Array();
var number;
function fusiontable() {
var query = "SELECT * FROM " +
'1KjBsrUrFRipTqVAjfBy54w-_skUhltGqQ4fPcyQ';
var encodedQuery = encodeURIComponent(query);
var url = ['https://www.googleapis.com/fusiontables/v1/query'];
url.push('?sql=' + encodedQuery);
url.push('&key=AIzaSyAH0WCAXRIdHdbI-6bnMSN4kVDDZZmGyqY');
url.push('&callback=?');
var sx;
sx=0;
$.ajax({
url: url.join(''),
dataType: 'jsonp',
success: function (data) {
var rows = data['rows'];
for (var i in rows) {
sx=sx+1;
a[sx]= rows[i][0];
b[sx]= rows[i][1];
c[sx]= rows[i][2];
d[sx]= rows[i][3];
e[sx]= rows[i][4];
v[sx]= rows[i][5];
}
number=sx;
$("#chart").text("準備完了");
}
});
}
p1=new Array();
p2=new Array();
p3=new Array();
p4=new Array();
p5=new Array();
google.load("visualization", "1", {packages:["corechart"]});
point=new Array();
date=new Array();
var pnumber;
function line() {
f();
g();
var s;
var data = new google.visualization.DataTable();
data.addColumn('string', '年齢');
data.addColumn('number', '人口');
data.addRows(pnumber);
for(s=1;s<pnumber+1;s++){
data.setCell(s-1, 0,date[s]);
data.setCell(s-1, 1,point[s]);
}
var options = {title:'推計人口'};
var chart = new google.visualization.LineChart(document.getElementById('chart'));
chart.draw(data, options);
}
function f(){
for(s=1;s<number+1;s++){
p1[s]="d";
for(sx=1;sx<cnumber[1]+1;sx++){
if(a[s]==cn[1][sx])p1[s]=cr[1][sx];
}
}
for(s=1;s<number+1;s++){
p2[s]="d";
for(sx=1;sx<cnumber[2]+1;sx++){
if(b[s]==cn[2][sx])p2[s]=cr[2][sx];
}
}
for(s=1;s<number+1;s++){
p3[s]="d";
for(sx=1;sx<cnumber[3]+1;sx++){
if(c[s]==cn[3][sx])p3[s]=cr[3][sx];
}
}
for(s=1;s<number+1;s++){
p4[s]="d";
for(sx=1;sx<cnumber[4]+1;sx++){
if(d[s]==cn[4][sx])p4[s]=cr[4][sx];
}
}
for(s=1;s<number+1;s++){
p5[s]="d";
for(sx=1;sx<cnumber[5]+1;sx++){
if(e[s]==cn[5][sx])p5[s]=cr[5][sx];
}
}
}
function g(){
var s,h,sx,v1;
sx=0;
for(s=1;s<number+1;s++){
h=0;
if(p1[s]=="男女計")h=h+1;
if(p2[s]=="総人口")h=h+1;
if(p3[s]=="総数")h=0;
if(h==2)sx=sx+1;
if(h==2)date[sx]=p3[s];
v1=parseInt(v[s]);
if(h==2)point[sx]=v1;
}
pnumber=sx;
alert(number);
}
function sample(){
credit();
fusiontable();
}
最終更新:2013年12月20日 16:30