【R】都道府県別 大学数の変遷

総務省統計局が発表している「都道府県・市区町村のすがた(社会・人口統計体系)」にある都道府県別のデータで、大学数の変遷をコロプレス図で示してみます。大学は、国立大学と公立大学を合算した国公立大学と、私立大学に分けて調べてみます。ここに紹介した通り、アニメーションで表示してみます。

データを取得して、次の通りアニメーションgifにしてみました。

1977年~2008年の国立大学数
1977年~2008年の私立大学数

特に、私立大学は、東京一極集中が良くわかります。国公立大学は、その性質から全国に程よく分散しています。

このコードは下記の通りです。

    library(animation)
    library(NipponMap)
    
    dat <- read.csv("Pref_anim_NatnlUniv.csv", header = FALSE, fileEncoding="UTF-8")
    dat <- dat[-1,]   # 不要な1行目を削除
    
    f_year<-table(dat$V2)
    df_year<-data.frame(f_year)
    df <- data.frame(Pref=dat$V4[1:47])
    
    for (i in 1:length(f_year)){
      year_val<-dat[dat$V2==df_year$Var1[i],6]
      df<-cbind(df, year_val)
    }
    col_name<-as.character(df_year$Var1[-length(f_year)])
    colnames(df)<-c("Pref", col_name)
    
    col_start <- 0.2
    col_end <- 0.0
    
    ani.options(outdir=getwd(), convert = 'C:/Program Files/ImageMagick-7.0.10-Q16/convert.exe')
    
    replot <- function(n){
    
      for(i in c(2:n)){
    
        df[,i]<-as.numeric(as.character(df[,i]))
        
        datc_k <- cut(df[,i], hist(df[,i], plot=FALSE)$breaks, right=FALSE)
        datc_kcol <- rainbow(length(levels(datc_k)), start = col_start, end=col_end)[as.integer(datc_k)]
    
        par(mar=c(0,0,2,0))
        JapanPrefMap(datc_kcol, main=col_name[i+1])
        legend("bottomright", fill=rainbow(length(levels(datc_k)), start = col_start, end=col_end), legend=names(table(datc_k)))
  
      }
  
    }
  
    saveGIF({replot(length(f_year)-2)}, clean=TRUE, img.name="Pref_anim_Univ", movie.name="Pref_anim_NatnlUniv.gif")
    

Add a Comment

メールアドレスが公開されることはありません。