package graph;
import java.io.File;
import java.io.*;
public class pro {
int s,datanumber;
String[] data=new String[5000];
String[] name=new String[5000];
String[] code=new String[5000];
int[] v1=new int[5000];
int[] v2=new int[5000];
int[] v3=new int[5000];
int[] a1=new int[5000];
int[] a2=new int[5000];
int[] a3=new int[5000];
int number;
public static void main(String[] args) {
pro t=new pro();
}
pro(){
File f=new File("data");
String[] ff=f.list();
for(s=0;s<ff.length;s++){
graph sub=new graph();
sub.makedata("data/"+ff[s]);
name[s]=sub.name;
code[s]=ff[s].replace(".txt","");
System.out.println(name[s]+","+code[s]);
}
number=ff.length;
writehtml("index.html");
}
void writehtml(String file){
int s,sx;
try{
PrintWriter pw = new PrintWriter (new BufferedWriter(new FileWriter(file)));
pw.println("<html>");
pw.println("<head>");
pw.println("<title>映画の興行</title>");
pw.println("<meta charset=\"utf-8\"/>");
pw.println("</head>");
pw.println("<body><ul>");
for(s=0;s<number;s++){
pw.println("<li><a href=\""+code[s]+".html\">"+name[s]+"</a></li>");
}
pw.println("</ul></body>");
pw.println("</html>");
System.out.println("ファイルに書きこみました。");
pw.close();
} catch(IOException ep){ System.out.println("入出力エラーです。"); }
}
}
package graph;
import java.io.*;
public class graph {
int s,datanumber;
String[] data=new String[5000];
String[] dic=new String[5000];
String[] date=new String[5000];
int[] v1=new int[5000];
int[] v2=new int[5000];
int[] v3=new int[5000];
int[] a1=new int[5000];
int[] a2=new int[5000];
int[] a3=new int[5000];
String name,code;
int dicnumber;
void makedata(String file){
readx(file);
for(s=1;s<datanumber+1;s++){
String[] x=data[s].split(",");
date[s]=x[0]+"年"+x[1]+"月"+x[2]+"日";
name=x[5];
code=x[9];
v1[s]=numx(x[6]);
v2[s]=numx(x[7]);
v3[s]=numx(x[8]);
}
dicnumber=0;
int sx;
for(s=1;s<datanumber+1;s++){
int h=0;
for(sx=0;sx<dicnumber+1;sx++){
if(date[s].equals(dic[sx]))h=100;
}
if(h<50)dicnumber=dicnumber+1;
if(h<50)dic[dicnumber]=date[s];
}
System.out.println(dicnumber);
for(sx=1;sx<dicnumber+1;sx++){
a1[sx]=0;
a2[sx]=0;
a3[sx]=0;
}
for(s=1;s<datanumber+1;s++){
int sxs=0;
for(sx=1;sx<dicnumber+1;sx++){
if(date[s].equals(dic[sx]))sxs=sx;
}
a1[sxs]=a1[sxs]+v1[s];
a2[sxs]=a2[sxs]+v2[s];
a3[sxs]=a3[sxs]+v3[s];
}
writehtml("gdata/"+code+".html");
writejs("gdata/"+code+".js");
}
void writehtml(String file){
int s,sx;
try{
PrintWriter pw = new PrintWriter (new BufferedWriter(new FileWriter(file)));
pw.println("<html>");
pw.println("<head>");
pw.println("<title>"+name+"</title>");
pw.println("<meta charset=\"utf-8\"/>");
pw.println("<script type=\"text/javascript\" src=\"http://www.google.com/jsapi\"></script> ");
pw.println("<script src=\"jquery.js\"></script>");
pw.println("<script src=\""+code+".js\"></script>");
pw.println("</head>");
pw.println("<body onload=\"sample()\">");
pw.println("<div id=\"g1\" style=\"width: 800px; height: 500px;\"></div>");
pw.println("<div id=\"g2\" style=\"width: 800px; height: 500px;\"></div>");
pw.println("</body>");
pw.println("</html>");
System.out.println("ファイルに書きこみました。");
pw.close();
} catch(IOException ep){ System.out.println("入出力エラーです。"); }
}
void writejs(String file){
int s,sx;
try{
PrintWriter pw = new PrintWriter (new BufferedWriter(new FileWriter(file)));
pw.println("google.load(\"visualization\", \"1\", {packages:[\"corechart\"]});");
pw.println("var x=new Array()");
pw.println("var x2=new Array()");
pw.println("var x3=new Array()");
pw.println("var v1=new Array()");
pw.println("var v2=new Array()");
pw.println("var v3=new Array()");
pw.println("var date=new Array()");
pw.println("function sample(){");
pw.println("number="+dicnumber+";");
for(s=1;s<dicnumber+1;s++){
pw.println("date["+s+"]=\""+dic[s]+"\";");
pw.println("v1["+s+"]="+a1[s]+";");
pw.println("v2["+s+"]="+a2[s]+";");
pw.println("v3["+s+"]="+a3[s]+";");
}
pw.println("for(s=0;s<number+1;s++){");
pw.println("x[s]=new Array();}");
pw.println("x[0][0]=\"月日\";");
pw.println("x[0][1]=\"売上\";");
pw.println("for(s=1;s<number+1;s++){");
pw.println("x[s][0]=date[s];");
pw.println("x[s][1]=v1[s];}");
pw.println("var data =google.visualization.arrayToDataTable(x);");
pw.println("var op = {title: '"+name+"'}");
pw.println("var chart = new google.visualization.LineChart(document.getElementById('g1'));");
pw.println("chart.draw(data, op);");
pw.println("for(s=0;s<number+1;s++){");
pw.println("x2[s]=new Array();}");
pw.println("x2[0][0]=\"月日\";");
pw.println("x2[0][1]=\"座席\";");
pw.println("for(s=1;s<number+1;s++){");
pw.println("x2[s][0]=date[s];");
pw.println("x2[s][1]=v2[s];}");
pw.println("var data2 =google.visualization.arrayToDataTable(x2);");
pw.println("var op2 = {title: '"+name+"'}");
pw.println("var chart2 = new google.visualization.LineChart(document.getElementById('g2'));");
pw.println("chart2.draw(data2, op2);");
pw.println("for(s=0;s<number+1;s++){");
pw.println("x3[s]=new Array();}");
pw.println("x3[0][0]=\"月日\";");
pw.println("x3[0][1]=\"劇場\";");
pw.println("for(s=1;s<number+1;s++){");
pw.println("x3[s][0]=date[s];");
pw.println("x3[s][1]=v3[s];}");
pw.println("var data3 =google.visualization.arrayToDataTable(x3);");
pw.println("var op3 = {title: '"+name+"'}");
pw.println("var chart3 = new google.visualization.LineChart(document.getElementById('g3'));");
pw.println("chart3.draw(data3, op3);");
pw.println("}");
System.out.println("ファイルに書きこみました。");
pw.close();
} catch(IOException ep){ System.out.println("入出力エラーです。"); }
}
int numx(String str){
int nx;
nx=0;
try{
nx=Integer.parseInt(str);
}catch (Exception e) {}
return nx;
}
void readx(String file){
String str;
BufferedReader br;
int s;
s=0;
try {
br = new BufferedReader(new InputStreamReader(new FileInputStream(file),"UTF-8"));
while((str = br.readLine()) != null) {
s=s+1;
data[s]=str;
}
br.close();
} catch (IOException e) {System.out.println(e);}
datanumber=s;
}
}
最終更新:2016年12月11日 09:00