<?xml version="1.0" encoding="UTF-8" ?><rdf:RDF 
  xmlns="http://purl.org/rss/1.0/"
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:atom="http://www.w3.org/2005/Atom"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xml:lang="ja">
  <channel rdf:about="http://w.atwiki.jp/nosuke/">
    <title>nosuke @ ウィキ</title>
    <link>http://w.atwiki.jp/nosuke/</link>
    <atom:link href="https://w.atwiki.jp/nosuke/rss10.xml" rel="self" type="application/rss+xml" />
    <atom:link rel="hub" href="https://pubsubhubbub.appspot.com" />
    <description>nosuke @ ウィキ</description>

    <dc:language>ja</dc:language>
    <dc:date>2012-05-28T20:13:32+09:00</dc:date>
    <utime>1338203612</utime>

    <items>
      <rdf:Seq>
                <rdf:li rdf:resource="https://w.atwiki.jp/nosuke/pages/15.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/nosuke/pages/14.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/nosuke/pages/13.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/nosuke/pages/12.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/nosuke/pages/11.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/nosuke/pages/10.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/nosuke/pages/9.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/nosuke/pages/7.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/nosuke/pages/6.html" />
                <rdf:li rdf:resource="https://w.atwiki.jp/nosuke/pages/5.html" />
              </rdf:Seq>
    </items>
	
		
    
  </channel>
    <item rdf:about="https://w.atwiki.jp/nosuke/pages/15.html">
    <title>メニュー2</title>
    <link>https://w.atwiki.jp/nosuke/pages/15.html</link>
    <description>
      おまけ：日本語を表示させたいとき
課題１：素数を数える
課題２：平方根を与える組
課題３：積分の近似
課題４：級数の和
課題５：正多角形
課題６：素因数分解
課題７：階乗
課題８：円の面積の近似値
課題９：４つの円が重なる面積
課題１０：対数グラフ
課題１１：F(x)=1+1/2^x+1/3^x +...+1/100^xのグラフ
課題１２：半球
課題１３：パッケージbiOpsを使った画像処理
課題１４：ランダムな位置と色で円を描く
課題１５：パッケージrgl、および関数spheres3dについて
おまけ：日本語を表示させたいとき †
グラフを描くとき、HiraMaru?フォントなら日本語も表示できる（Macを使うとき）

quartzFonts(HiraMaru=quartzFont(rep(&quot;HiraMaruProN-W4&quot;, 4))) # Rを起動時に実行
par(family=&quot;HiraMaru&quot;) # グラフを描画する度に実行
↑
課題１：素数を数える †
素数を判定する関数

hantei=function(n){
hantei=1
if (n==2 | n==3) {
return(hantei) # 2と3は素数なので判定を1のまま終了
}
m=ceiling(sqrt(n))
for (i in 2:m){
if (n %% i==0) {
hantei=0
return(hantei) # 素数じゃないので判定を0にして終了
}}
return(hantei)
}
n 以下の素数を求める関数

prime=function(n){
z=0
prime_array=c(NA)
for (i in 2:n){
if (hantei(i)==1) { # ここでhantei関数を使う
z=z+1
prime_array[z]=i
}}
return(prime_array)
}
結果のグラフを描画する

x=c(1000, c(1:5)*10000) # xに1000,100000,200000,...,500000 を格納する

G=c(NA)
H=c(NA)
for (i in 1:length(x)){
n=x[i]
G[i]=length(prime(n)) # 計算値
H[i]=n / log(n) # 理論値
}
 # 相対頻度をグラフにするため、GとHを個数xで割っている
plot(x,G/x,type=&quot;b&quot;,ylim=c(0,0.2),xlim=c(0,50000),col=&quot;blue&quot;,ylab=&quot;&quot;)
par(new=&quot;T&quot;)
plot(x,H/x,type=&quot;b&quot;,ylim=c(0,0.2),xlim=c(0,50000),col=&quot;red&quot;,lty=2,main=&quot;x以下の素数の相対頻度と理論近似値&quot;,ylab=&quot;相対頻度とその理論近似値&quot;)

legend(1000, 0.20, c(&quot;相対頻度&quot;, &quot;理論近似値&quot;), col = c(&quot;blue&quot;,&quot;red&quot;), lty = c(1,2), pch = c(1,1))
↑
課題２：平方根を与える組 †
n=100
z=0
for (i in 1:n){
for (j in 1:n){
m=i^2+j^2
if (ceiling(sqrt(m))^2==m) {z=z+1;cat(i,&quot;^2&quot;,&quot;+&quot;,j,&quot;^2=&quot;,m,&quot;\n&quot;)} 
 # ceilingは、引数の数の最も大きな整数、sqrtは平方根を求める

}}
cat(&quot;1=&lt;x,y=&lt;&quot;,n,&quot;のとき平方数を与える組(x,y)の個数は&quot;,z,&quot;\n&quot;)
↑
課題３：積分の近似 †
curve(sin(x),xlim=c(0,pi),ylim=c(0,2),col=&quot;red&quot;) # sin(x)を描画する：赤

par(new=T) # 重ね描き
n=100 # nは分割数 : 100等分する
x=seq(0,pi,length=n)
for(i in x){ 
polygon(c(i,i,i+pi/n,i+pi/n),c(0,sin(i),sin(i),0)) # 分割された面積を描画する：黒
}
S= sum(sin(x))*(pi/n) # 面積
cat(S) # ２に値が近いことを確認する
↑
課題４：級数の和 †
n=20
S=0 # 初期値
for( i in 1:n ){
S=S+ i^3
}
cat(S)
↑
課題５：正多角形 †
n=seq(10, 100, by=10) # 正多角形の辺の数
S=0 # 初期値
for( i in 1:length(n)){
S[i]= sin(pi/n[i])*cos(pi/n[i])*n[i]
} 
plot(S, type=&quot;b&quot;, col=&quot;blue&quot;, main=&quot;正多角形の面積&quot;) 
 
abline(h=pi,col=&quot;red&quot;,lwd=2) # 3.14のラインを引き、半径１の円の面積に近づくことを確認する
↑
課題６：素因数分解 †
課題２のhantei,prime関数を使うので、Rに読み込ませておくこと。 
素因数分解する。

factor=function(n){
F=prime(n)
L=length(F)
G=c(NA)
z=0
# n以下の素数の中でｎを割り切る素数をGに格納する
for (i in 1:L){
if (n %% F[i]==0) {
z=z+1
G[z]=F[i]
}}

LL=length(G) # 素数の個数
bekiv=c(NA) # べき数
# nをわりきる素数が何冪まで割れるかを調べ、bekivに格納する
for (i in 1:LL){
   m=G[i]  
   beki=1
   N=n
   while (N%%m==0){
   N=N/m
   beki=beki+1
 }
 bekiv[i]=beki-1
}
# 数式に表す 
express=paste(n,&quot;=&quot;,sep=&quot;&quot;)
for (i in 1:LL){
   express=paste(express,G[i],&quot;^&quot;,bekiv[i],sep=&quot;&quot;)
   if (i&lt;LL) express=paste(express,&quot;*&quot;,sep=&quot;&quot;)
}	
return(express)
}
使用例

# 例１
factor(2^3*3^2)
# 例２
factor(189)
↑
課題７：階乗 †
n=10 
P=1 # 初期値
for(i in 1:n){
P=P*i
}
cat(P) # 結果
↑
課題８：円の面積の近似値 †
Sn=c(NA) # 初期値
for (i in 1:10){
n=i*1000 
x=runif(n,-1,1)
y=runif(n,-1,1)

# 条件：which(x^2+y^2&lt;1) を満たす点の個数を求める
Sn[i]=4*length(which(x^2+y^2&lt;1))/n # 円の面積の近似値
}
x=c(1:10)*1000
plot(x,Sn,col=&quot;blue&quot;,type=&quot;b&quot;,main=&quot;πの乱数による推定値&quot;,lwd=2)
abline(h=pi,col=&quot;red&quot;,lwd=2)
↑
課題９：４つの円が重なる面積 †
4つの円を描画する

par(mfrow=c(2,1))
t=seq(0,2*pi,len=10000)
plot(cos(t),sin(t),xlim=c(-1,2),ylim=c(-1,2),col=&quot;blue&quot;, type=&quot;l&quot;, xlab=&quot;&quot;, ylab=&quot;&quot;, main=&quot;円が重なった領域の面積の近似値を求める&quot;)
par(new=T)
plot(cos(t),sin(t)+1,xlim=c(-1,2),ylim=c(-1,2),col=&quot;red&quot;, type=&quot;l&quot; , xlab=&quot;&quot;, ylab=&quot;&quot;)
par(new=T)
plot(cos(t)+1,sin(t),xlim=c(-1,2),ylim=c(-1,2),col=&quot;brown&quot;, type=&quot;l&quot;, xlab=&quot;&quot;, ylab=&quot;&quot;)
par(new=T)
plot(cos(t)+1,sin(t)+1,xlim=c(-1,2),ylim=c(-1,2),col=&quot;green&quot;, type=&quot;l&quot;, xlab=&quot;&quot;, ylab=&quot;&quot;)
円が重なりあう部分についての処理

n=seq(100,1000,by=100)
Sn = rep(0, length(n))
for( i in 1:length(n)){
# 乱数を発生させる
x = runif(n[i]) 
y = runif(n[i])

S1=which(x^2+y^2&lt;1)
S2=which((x-1)^2+y^2&lt;1)
S3=which(x^2+(y-1)^2&lt;1)
S4=which((x-1)^2+(y-1)^2&lt;1)
# 重なった部分をSとする
S=intersect(intersect(S1,S2),intersect(S3,S4)) # intersectは積集合を求める
par(new=&quot;T&quot;)
plot(x[S],y[S],col=&quot;grey&quot;, xlim=c(-1,2),ylim=c(-1,2)) # Sを灰色に塗る

Sn[i] = length(S)/n[i] # 面積の近似を求める
cat(n[i],&quot;個のときの面積の近似値は、&quot;, Sn[i], &quot;です\n&quot;)
}
par(new=&quot;F&quot;)
plot(n,Sn,type=&quot;l&quot;, main=&quot;面積の近似値の折れ線グラフ&quot;)
↑
課題１０：対数グラフ †
curve(log(x),from=0,to=101,col=&quot;blue&quot;,main=&quot;log(x)のグラフ&quot;)
↑
課題１１：F(x)=1+1/2^x+1/3^x +...+1/100^xのグラフ †
F_function = function(x){
n=100
F=0 # 初期値
for(i in 1:n){
F = F + x^i
}
return(F)
}
curve(F_function,from=0, to=1,col=&quot;blue&quot;, main=&quot;F(x)=1+1/2^x+1/3^x+...+1/100^xのグラフ&quot;)
↑
課題１２：半球 †
library(scatterplot3d)

epsilon = 0
s=seq(0,pi/2,len=100)
t=seq(epsilon,2*pi,len=100)
x=as.vector(sin(s)%*%t(cos(t)))
y=as.vector(sin(s)%*%t(sin(t)))
z=as.vector(cos(s)%*%t(rep(1,100)))
scatterplot3d(x,y,z,color=rgb(.5, .8, 1, .2))
↑
課題１３：パッケージbiOpsを使った画像処理 †
パッケージbiOpsはWindows版でしか使えない。テストでは大まかな処理を理解すればOK。

library(biOps)

# 画像データをXに入れる
# X=readJpeg(&quot;/auto_mnt/home3/share/students/sakata/flower/flower.jpg&quot;) # ここ画像の格納場所によって任意
par(mfrow=c(2,2)) # 画像を2×2で配置する

# 赤の画像を作る
# 画像データを入れる配列を作る。dim(X)[1],dim(X)[2]は画像xの縦横
XR=array(dim=c(dim(X)[1],dim(X)[2],3))
XR[,,1]=imgRedBand(X) # 赤色のデータ
XR[,,2]=0 # それ以外は0にする
XR[,,3]=0
plot(imagedata(XR)) # 描画

# 緑の画像
XG=array(dim=c(dim(X)[1],dim(X)[2],3))
XG[,,1]=0
XG[,,2]=imgGreenBand(X)
XG[,,3]=0
plot(imagedata(XG))

# 青の画像
XB=array(dim=c(dim(X)[1],dim(X)[2],3))
XB[,,1]=0
XB[,,2]=0
XB[,,3]=imgBlueBand(X)
plot(imagedata(XB))

plot(imagedata(X)) # 元の画像
↑
課題１４：ランダムな位置と色で円を描く †
円を描画する関数

circle=function(x0,y0){
t=seq(0,2*pi,length=100)
x=0.1*cos(t)+x0
y=0.1*sin(t)+y0
polygon(x,y,col=rgb(x0,y0,(x0+y0)/2), lty=0) 
}
上の関数をランダムな位置で呼び出す

n=100 # 100個円を作る
plot(c(0,0),c(1,1),type=&quot;n&quot;,xlim=c(0,1),ylim=c(0,1))
for (i in 1:n){
x0=runif(1)
y0=runif(1)
circle(x0,y0) # ここでcircle関数を呼び出す
}
↑
課題１５：パッケージrgl、および関数spheres3dについて †
右記URL参照 http://cse.naro.affrc.go.jp/takezawa/r-tips/r/57.html    </description>
    <dc:date>2012-05-28T20:13:32+09:00</dc:date>
    <utime>1338203612</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/nosuke/pages/14.html">
    <title>プラグイン/インスタグラム</title>
    <link>https://w.atwiki.jp/nosuke/pages/14.html</link>
    <description>
      *インスタグラムプラグイン

人気の画像共有サービス、Instagram(インスタグラム）の画像をアットウィキに貼れるプラグインです。


 #ig_user(ユーザー名)
 と記載することで、特定ユーザーのInstagramのフィードを表示することができます。

例）@dogoftheday
#ig_user(dogoftheday)

----

 #ig_tags(タグ名)
 と記載することで、特定タグのInstagramのフィードを表示することができます。

#dogofthedayjp タグ
#ig_tag(dogofthedayjp)

----

 #ig_popular
 と記載することで、Instagramのpopularフィードを表示することができます。



詳しい使い方は以下のページを参考にしてください！
＝＞http://www1.atwiki.jp/guide/pages/935.html

--------    </description>
    <dc:date>2012-05-28T20:11:22+09:00</dc:date>
    <utime>1338203482</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/nosuke/pages/13.html">
    <title>プラグイン/人気商品一覧</title>
    <link>https://w.atwiki.jp/nosuke/pages/13.html</link>
    <description>
      * 人気商品一覧
@wikiのwikiモードでは
 #price_list(カテゴリ名)
と入力することで、あるカテゴリの売れ筋商品のリストを表示することができます。

カテゴリには以下のキーワードがご利用できます。
|キーワード|表示される内容|
|ps3|PlayStation3|
|ps2|PlayStation3|
|psp|PSP|
|wii|Wii|
|xbox|XBOX|
|nds|Nintendo DS|
|desctop-pc|デスクトップパソコン|
|note-pc|ノートパソコン|
|mp3player|デジタルオーディオプレイヤー|
|kaden|家電|
|aircon|エアコン|
|camera|カメラ|
|game-toy|ゲーム・おもちゃ全般|
|all|指定無し|

空白の場合はランダムな商品が表示されます。

※このプラグインは[[価格比較サイト@PRICE&gt;&gt;http://atprice.jp]]のデータを利用しています。

-----

たとえば、
 #price_list(game-toy)
と入力すると以下のように表示されます。

ゲーム・おもちゃ全般の売れ筋商品
#price_list(game-toy)

ノートパソコンの売れ筋商品
#price_list(game-toy)

人気商品リスト
#price_list()
    </description>
    <dc:date>2012-05-28T20:11:22+09:00</dc:date>
    <utime>1338203482</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/nosuke/pages/12.html">
    <title>プラグイン/コメント</title>
    <link>https://w.atwiki.jp/nosuke/pages/12.html</link>
    <description>
      * コメントプラグイン
@wikiのwikiモードでは
 #comment()
と入力することでコメントフォームを簡単に作成することができます。
詳しくはこちらをご覧ください。
＝＞http://atwiki.jp/guide/17_60_ja.html


-----
たとえば、#comment() と入力すると以下のように表示されます。

#comment    </description>
    <dc:date>2012-05-28T20:11:22+09:00</dc:date>
    <utime>1338203482</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/nosuke/pages/11.html">
    <title>プラグイン/関連ブログ</title>
    <link>https://w.atwiki.jp/nosuke/pages/11.html</link>
    <description>
      * 関連ブログ
@wikiのwikiモードでは
 #bf(興味のある単語)
と入力することで、あるキーワードに関連するブログ一覧を表示することができます

詳しくはこちらをご覧ください。
＝＞http://atwiki.jp/guide/17_161_ja.html

-----


たとえば、#bf(ゲーム)と入力すると以下のように表示されます。


#bf(ゲーム)
    </description>
    <dc:date>2012-05-28T20:11:22+09:00</dc:date>
    <utime>1338203482</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/nosuke/pages/10.html">
    <title>プラグイン</title>
    <link>https://w.atwiki.jp/nosuke/pages/10.html</link>
    <description>
      @wikiにはいくつかの便利なプラグインがあります。

-----


#ls

-----

これ以外のプラグインについては@wikiガイドをご覧ください
=&gt;http://atwiki.jp/guide/
    </description>
    <dc:date>2012-05-28T20:11:22+09:00</dc:date>
    <utime>1338203482</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/nosuke/pages/9.html">
    <title>プラグイン/動画(Youtube)</title>
    <link>https://w.atwiki.jp/nosuke/pages/9.html</link>
    <description>
      * 動画(youtube)
@wikiのwikiモードでは
 #video(動画のURL)
と入力することで、動画を貼り付けることが出来ます。
詳しくはこちらをご覧ください。
＝＞http://atwiki.jp/guide/17_209_ja.html

また動画のURLはYoutubeのURLをご利用ください。
＝＞http://www.youtube.com/

-----


たとえば、#video(http://youtube.com/watch?v=kTV1CcS53JQ)と入力すると以下のように表示されます。


#video(http://youtube.com/watch?v=kTV1CcS53JQ)

    </description>
    <dc:date>2012-05-28T20:11:22+09:00</dc:date>
    <utime>1338203482</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/nosuke/pages/7.html">
    <title>プラグイン/アーカイブ</title>
    <link>https://w.atwiki.jp/nosuke/pages/7.html</link>
    <description>
      * アーカイブ
@wikiのwikiモードでは
 #archive_log()
と入力することで、特定のウェブページを保存しておくことができます。
詳しくはこちらをご覧ください。
＝＞http://atwiki.jp/guide/25_171_ja.html


-----


たとえば、#archive_log()と入力すると以下のように表示されます。
保存したいURLとサイト名を入力して&quot;アーカイブログ&quot;をクリックしてみよう


#archive_log()
    </description>
    <dc:date>2012-05-28T20:11:22+09:00</dc:date>
    <utime>1338203482</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/nosuke/pages/6.html">
    <title>プラグイン/編集履歴</title>
    <link>https://w.atwiki.jp/nosuke/pages/6.html</link>
    <description>
      * 更新履歴
@wikiのwikiモードでは
 #recent(数字)
と入力することで、wikiのページ更新履歴を表示することができます。
詳しくはこちらをご覧ください。
＝＞http://atwiki.jp/guide/17_117_ja.html


-----


たとえば、#recent(20)と入力すると以下のように表示されます。


#recent(20)
    </description>
    <dc:date>2012-05-28T20:11:22+09:00</dc:date>
    <utime>1338203482</utime>
  </item>
    <item rdf:about="https://w.atwiki.jp/nosuke/pages/5.html">
    <title>まとめサイト作成支援ツール</title>
    <link>https://w.atwiki.jp/nosuke/pages/5.html</link>
    <description>
      * まとめサイト作成支援ツールについて
@wikiには[[まとめサイト作成を支援するツール&gt;&gt;http://atwiki.jp/matome/]]があります。
また、
 #matome_list
と入力することで、注目の掲示板が一覧表示されます。

利用例）#matome_listと入力すると下記のように表示されます
#matome_list
    </description>
    <dc:date>2012-05-28T20:11:22+09:00</dc:date>
    <utime>1338203482</utime>
  </item>
  </rdf:RDF>
