論文引用・書籍等に引用する場合の著作権についての連絡>>okinawa
目次
Rwwwは、RをWebで使うために作ったCGIプログラムです。このCGIは私OKINAWAがActiveBasicとCGIの仕組み、WIN32API、Rの勉強のために作成したものでWindowsでのみ動となり、Linux 及び MacOSX 上では利用できません。
現在、RをWeb上で利用できるツールは、RWebをはじめとしていくつのものがありますが、これらは設定が結構面倒です。(英語ですし(と筆者は思いますが))そこで、WebでRが簡単に利用できるようにと考え作成しました。
そのため、セキュリティについては、ほとんど考慮しておりませんので、Webサーバー側でアクセス制限等のことがらは、自己責任において使用してください。
なお、ツール内に入っている、gunma.shp,gunma.shx,gunma.dbfの作成に当たっては、ESRIジャパン株式会社の全国市区町村界データを使用しました。本データの著作権はESRIジャパン株式会社に帰属します。
また、デモ用のRスクリプトおよびデータはhttp://phi.med.gunma-u.ac.jp/swtips/EpiMap.htmlより引用しました。(中澤様ありがとうございました)
(注:windows7へ対応可能なのかを検証しておりましたが、windows7のセキュリティ解除の影響、IE8のセッション問題、Anhttpdがvista,win7に対応していない、ActiveBasicの開発が既に停止していること等から、これ以上のバージョンアップは行わないことにしました。ご了解いただきますようよろしくお願いいたします。)
***利用環境のみでのご利用をお願いします。***
Server:
OS:Windows XpProSP2,2000SP4
R2.0.1J,R2.1.0(pat),R2.2.0,maptools v0.4-13,maptools v0.5-2
httpd:AnHttp v1.42n,Apache1.3系,Apache2.0系
Client:
OS:Windows XpProSP2,2000SP4、MacOSX(確認済)/Linuxでは試してませんが、たぶん動くと思います.
Browser:IE6,FireFox1.0.6,Safari
Adobe(Acrobat)Reader ver 5,6,7(なるべく最新のものにしてください)
(注1)7は7.0.1以上にアップデートしてください
(注2)プログラム中のPDF描画pdf()においてPDFのバージョンをR2.0.0 で採用された1.4にしておりますので、対応しているAdobe(Acrobat)Readerは5以上になります。
DownLoad:
ver 0.2.6rwwwcgi_026.zip
ver 0.2.4rwwwcgi.zip
Version:
・rwww.exeバージョン:0.2.6
0.2.5では1回ごとに全オブジェクトを消去する方式でしたが、そのままでは使いにくいので、最初に.RDataを読み込んで初期化し、利用したあとに消去する方法に変更しました。
初期化のときに読み込ませる.RDataを自分の好きなように作成し、bin内のbackupフォルダ内に保存しておきます。
rwww.exeは起動時のいちばん最初にbackup内の.RDataを読み込みます。そして、処理が終了したいちばん最後に、オブジェクトを全て消去します。
この方法の利点は、処理に必要なオブジェクトはあらかじめ.RData内に作成しておくことができるため、自作関数や変数の再利用ができることと、ダミーのfunction(利用させたくない関数と同じ名前の何もしない関数)を作成して.RDataに保存すれば実行できなくさせることができるため、問題のあるコードからサーバーを守りやすくなります。
ls()のダミー関数を作ってls()を使えなくすれば、一時的にオブジェクトを見れなくすることもできます。ダミー関数を色々作ってためしてみてください。
AnHttp142nが不安定になることが多い方は、AnHttpをサービスに登録し、サービス内で動かしてみてください.安定すると思います.(キャッシュを割り当てることもいいようです)
・ver 0.2.5
主にrwww.exeコードのブラッシュアップ。
1回のクエリごとにobjectの消去をする。
バッチの起動・終了待ちのコードをきちんとしたものに変更。
ActiveBasic4.04にて再コンパイルしました。
・ver 0.2.4
実行するRのフォルダ名(バージョン)をパラメータとして指定できるようにしました。
このバージョンは、デフォルトではまだR2.0.1用になっていますので、
R2.1.0(pat)を使用する場合は、rwww/etc/param.txtの内容をrw2001からrw2010patに変更してください。
ActiveBasic4.01.02にて再コンパイルしました。
R2.1.0(pat)に対応しました。
・ver 0.2.3
ActiveBasic4にて再コンパイルしました。maptools v0.4-13対応確認しました。
・ver 0.2.2
MacOSX Client(Safari) でデモ用コード内の文字「〜」が自動変換されて、エラーになる部分を変更。
(MacOSXからも正常に動くことを確認しました)
・ver 0.2.1
師匠に高速化の技を教えてもらいました。ものによって3倍は速くなってます。
中澤様のデモ用コードをmaptools v0.4-12対応に変更。(Map2polyでraw=Fがあるとエラーになるので、削除しました。)
・ver 0.2.0 公開初版。
(1)県境描画
#ライブラリ宣言 library(maptools) library(gpclib) #ShapeFile読み込み gunma <- read.shape("c:/Program Files/R/rwww/shapefiles/gunma.shp") #Mapオブジェクトをポリゴンに変換 gunma.poly <- Map2poly(gunma) #ポリゴンの数抽出 np<-length(gunma.poly) #gpclib の座標形式に変換 gunma.union <- as(gunma.poly[[1]],"gpc.poly") #gpclibのオブジェクトに変換 for(i in 2:np){ poly <- as(gunma.poly[[i]],"gpc.poly") #gpclibのオブジェクトに変換 gunma.union<-union( gunma.union, poly) #Union(合成) }
#県境plot(線種:太さ、形式、色:塗りつぶし色、線色) plot(gunma.union,poly.args= list(lwd=2,lty=1,col="green",border="blue"))
#市町村境との合成 plot(gunma.poly,border="blue",add=TRUE)
・fGISを用いた方法についてShapeFileライブラリにアップしました。
・Apache2.0系推奨(1.3系でも問題なく動きます)
・httpd.conf内のドキュメントルートの設定をc:/Program Files/R に変更
・rwwwに付いている、index.html内のexeをキックしている部分を変更
<FORM METHOD="POST" ACTION="/rwww/bin/Rwww.exe"> 変更前
<FORM METHOD="POST" ACTION="/cgi-bin/Rwww.exe"> 変更後
・Apacheのcgi-binフォルダにRwww.exeを入れる。
注)もっと美しい方法があると思いますが、とりあえずこれで動きました。
17009 人