アットウィキロゴ

b666p

package map;
 
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
 
 
public class pro {
 
    double[][] lon=new double[5000][11];
   double[][] lat=new double[5000][11];
     String[] city=new String[50000];
  String[] code=new String[50000];
 
      int datanumber;
String[] data=new String[50000];
 int[] point=new int[5000];
    int numberx;
  int[] v=new int[5000];
 
    public static void main(String[] args) {
        pro te=new pro();
    }
 
 
    pro(){
 
    readx("map.csv");
 
 
    catchdata sub7=new catchdata();
    sub7.makedata();
    code=sub7.city;
    point=sub7.point;
    numberx=sub7.datanumber;
 
    int s,number;
 
    number=0;
 
   for(s=2;s<datanumber+1;s++){
    String[] x=data[s].split(",");    
    int n=Integer.parseInt(x[0]); 
    int m=Integer.parseInt(x[2]);
    lon[n][m]=Double.parseDouble(x[3]);
        lat[n][m]=Double.parseDouble(x[4]);
        city[n]=x[1];
        if(city[n].length()<5)city[n]="0"+city[n];
   number=n;
   }
 
   System.out.println(number);
 
   int sx;
   for(s=1;s<number+1;s++){
   v[s]=0;
   for(sx=1;sx<numberx+1;sx++){
   if(city[s].equals(code[sx]))v[s]=point[sx];    
   }   
   }
 
 
 
  graph sub=new graph();
        sub.lonx=lon;
        sub.latx=lat;
        sub.dicnumber=number;
        sub.point=v;
        sub.makedata("ren3.jpg");
 
 
 
 
 
 
 
 
 
 
 
 
 
 
    }
 
     void readx(String file){
 
String str;
BufferedReader br;  
int s;
s=0;
try {
br = new BufferedReader(new InputStreamReader(new FileInputStream(file),"SJIS"));  
while((str = br.readLine()) != null) {  
s=s+1;
data[s]=str;  
}
br.close();
} catch (IOException e) {System.out.println(e);}  
 
datanumber=s;
 
} 
 
 
 
}
 
 
 
 
package map;
 
import java.awt.Polygon;
import java.awt.*; 
import java.awt.Color;   
import java.awt.image.*;   
import java.awt.image.BufferedImage;   
import java.io.*;   
import javax.imageio.ImageIO;   
import java.awt.Polygon;
import java.util.HashMap;
 
class graph{
 
 
       int number_adm;
    int h=700;
    int w=700;
 
 
 
String maxg;  
 
 
 
 
 double z;
 
 int dicnumber;
 String[] dic=new String[20000];
  double[][] lonx=new double[5000][501];
   double[][] latx=new double[5000][501];
     int[] point=new int[6000];
 
 
void makedata(String file){
 
    int w1,h1,mx,nx;
 
 
w1=700;
h1=700;    
BufferedImage off = new BufferedImage(w1, h1, BufferedImage.TYPE_INT_BGR);   
Graphics offsc = off.getGraphics();  
 
offsc.setColor(Color.WHITE);
offsc.fillRect(0,0,700,700);
 
double maxy,maxx,minx,miny;
maxy=0;
maxx=0;
int sx,s;
for(s=1;s<dicnumber+1;s++){
for(sx=1;sx<11;sx++){
if(lonx[s][sx]>maxy)maxy=lonx[s][sx];
if(latx[s][sx]>maxx)maxx=latx[s][sx];
}}
 
minx=99999;
miny=99999;
for(s=1;s<dicnumber+1;s++){
for(sx=1;sx<11;sx++){
if(lonx[s][sx]<miny)miny=lonx[s][sx];
if(latx[s][sx]<minx)minx=latx[s][sx];
}}
 
int x1,y1;
 
for(s=1;s<dicnumber+1;s++){
int[] px=new int[600];
int[] py=new int[600];
 
for(sx=1;sx<11;sx++){
px[sx-1]=(int)(500*(latx[s][sx]-minx)/(maxx-minx));
py[sx-1]=500-(int)((500*(lonx[s][sx]-miny)/(maxy-miny)));
}
offsc.setColor(Color.BLUE); 
if(point[s]>10000)offsc.setColor(Color.ORANGE);
if(point[s]>50000)offsc.setColor(Color.PINK); 
if(point[s]>100000)offsc.setColor(Color.RED);
Polygon po = new Polygon(px,py,10);
offsc.fillPolygon(po);
}
 
offsc.dispose(); 
 
try { 
ImageIO.write(off, "jpeg", new File(file)); 
} catch (IOException exception) { exception.printStackTrace(); }     
}   
 
}
 
 
package map;
 
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
 
 
 
public class catchdata{
 
    int s,datanumber;
    String[] data=new String[5000];
     String[] city=new String[5000];
     int[] point=new int[5000];
 
 
 
 
    void makedata(){
 
    readx("datax.csv");
 
    int sx;
 
    for(s=1;s<datanumber+1;s++){
    data[s]=scan(data[s]);
    String[] x=data[s].split(",");
    city[s]="";
    point[s]=0;
    for(sx=0;sx<x.length;sx++){
    if(sx==0)city[s]=x[sx];
    if(sx==2)point[s]=numx(x[sx]);
    } 
    }
 
 
    }
    String scan(String str){
 
        int tr;
        String strx=str;
        for(tr=1;tr<41;tr++){
        strx=plan(strx);    
        }
        strx=strx.replace("\"","");
        return strx;
    }
 
    String plan(String str){
 
        int p1=str.indexOf("\"");
        int p2=str.indexOf("\"",p1+1);
 
        String a1="";
        String a2="";
        String a3="";
 
       if(p2>-1)a1=str.substring(0,p1);
       if(p2>-1)a2=str.substring(p2+1,str.length());
       if(p2>-1)a3=str.substring(p1+1,p2);
 
       a3=a3.replace(",","");
 
       String strx=str;
       if(p2>-1)strx=a1+a3+a2;
 
       return strx;
 
    }
 
 
     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),"SJIS"));  
while((str = br.readLine()) != null) {  
s=s+1;
data[s]=str;  
}
br.close();
} catch (IOException e) {System.out.println(e);}  
 
datanumber=s;
 
} 
 
 
 
}
 
最終更新:2016年04月16日 22:50