【初心者向け】極座標系(Polar Coordinate System)の視座(Perspective)について。

**極座標系**(<font color=blue>Polar Coordinates System</font>)において**円弧**<font color=green>r(θ)</font>、**絶対値関数**(<font color=blue>の描く正方形</font>)<font color=green>x+y=r</font>、そして**正方形**{<font color=green>x,y</font>}(<font color=green>±r,±r</font>)はそれぞれこう見えます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/ab781e48-605c-abf6-a688-6c4d1f4be751.png)

```R
#円関数
Circle_cmp<-function(Radius){
complex(mod=rep(Radius,41), arg=seq(pi,-pi,length=41))
}

#絶対値関数(方形)
ABS_cmp<-function(Radius){
#極座標系における正方形
cx01A<-seq(-1,0,length=11)
cx01B<-seq(0,1,length=11)
cx01C<-rev(seq(0,1,length=11))
cx01D<-rev(seq(-1,0,length=11))
cx01<-c(cx01A,cx01B[2:11],cx01C[2:11],cx01D[2:11])
cy01A<-seq(0,1,length=11)
cy01B<-rev(seq(0,1,length=11))
cy01C<-rev(seq(-1,0,length=11))
cy01D<-seq(-1,0,length=11)
cy01<-c(cy01A,cy01B[2:11],cy01C[2:11],cy01D[2:11])
complex(re=Radius*cx01, im=Radius*cy01)
}

#方形関数
Square_cmp<-function(Radius){
#極座標系における正方形
cx02A<-rep(-1,11)
cx02B<-seq(-1,1,length=11)
cx02C<-rep(1,11)
cx02D<-rev(seq(-1,1,length=11))
cx02<-c(cx02A[6:10],cx02B[1:10],cx02C[1:10],cx02D[1:10],cx02A[1:6])
cy02A<-seq(-1,1,length=11)
cy02B<-rep(1,11)
cy02C<-rev(seq(-1,1,length=11))
cy02D<-rep(-1,11)
cy02<-c(cy02A[6:10],cy02B[1:10],cy02C[1:10],cy02D[1:10],cy02A[1:6])
complex(re=Radius*cx02, im=Radius*cy02)
}

#メインプログラム
CC01<-Circle_cmp(1)
RC01<-RevC_cmp(1)
AC01<-ABS_cmp(1)
SC01<-Square_cmp(1)
#極座標系区分(-pi/2→pi/2)
Ind01<-11:31
c01<-c(CC01[Ind01],AC01[Ind01],SC01[Ind01])
plot(c01,asp=1,xlim=c(-1,1),ylim=c(-1,1),type="l",main="Polar Coordinates System r(θ)",xlab="Real",ylab="Imaginary",col=rgb(0,0,1))
#極座標系区分(-pi/2→-pi)
par(new=T)#上書き指定

Ind02<-1:11
c02<-c(CC01[Ind02],AC01[Ind02],SC01[Ind02])
plot(c02,asp=1,xlim=c(-1,1),ylim=c(-1,1),type="l",main="",xlab="",ylab="",col=rgb(1,1,0))

#極座標系区分(pi/2→pi)
par(new=T)#上書き指定

Ind03<-31:41
c03<-c(CC01[Ind03],AC01[Ind03],SC01[Ind03])
plot(c03,asp=1,xlim=c(-1,1),ylim=c(-1,1),type="l",main="",xlab="",ylab="",col=rgb(1,0,1))

abline(h=0)
abline(v=0) 
#凡例を書き添える
legend("bottomright", legend = c("θ=π/2~-π/2","θ=π/2~π","θ=-π/2~-π"), col=c(rgb(0,0,1),rgb(1,1,0),rgb(1,0,1)),lty =c(1,1,1),cex=0.8)
```
各象限に現れる曲線が、**距離関数**(<font color=blue>Distance Function</font>)の計算結果と合致します。
[【初心者向け】方形描画関数②距離空間との関係。](https://qiita.com/ochimusha01/items/06e49a35dffbd12b35aa)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/0b6afc68-4de7-47d2-6dd4-373fb3dbc7ed.png)

```R
cx<-seq(0,1,length=61)
f0<-function(x,p){(1-(x^p))^(1/p)}
cy10<-f0(cx,1/10)
cy15<-f0(cx,1/1.782273)
cy20<-f0(cx,1)
cy30<-f0(cx,2)
cy40<-f0(cx,99)
plot(cx,cy10,type="l",asp=1,xlim=c(0,1),ylim=c(0,1),main="p-Norm",xlab="",ylab="",col=rgb(1,0,1))
par(new=T)
plot(cx,cy15,type="l",asp=1,xlim=c(0,1),ylim=c(0,1),main="p-Norm",xlab="",ylab="",col=rgb(1,1,0))
par(new=T)
plot(cx,cy20,type="l",asp=1,xlim=c(0,1),ylim=c(0,1),main="",xlab="",ylab="",col=rgb(0,1,0))
par(new=T)
plot(cx,cy30,type="l",asp=1,xlim=c(0,1),ylim=c(0,1),main="",xlab="",ylab="",col=rgb(1,0,0))
par(new=T)
plot(cx,cy40,type="l",asp=1,xlim=c(0,1),ylim=c(0,1),main="",xlab="",ylab="",col=rgb(0,0,1))
# 凡例を書き添える 。
legend("bottomleft", legend=c("p=0.1","p=1/1.78…","p=1","p=2","p=99"), lty =c(1,1,1,1,1),col=c(rgb(1,0,1),rgb(1,1,0),rgb(0,1,0),rgb(1,0,0),rgb(0,0,1)),cex=0.8) 
```
それでは今度はここに**放物線**(<font color=blue>Parabra</font>)とその**逆関数**を置いてみます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/8dc1c98d-629b-fa8b-78f2-e915e0b3ee08.png)

```R
#円関数
Circle_cmp<-function(Radius){

complex(mod=rep(Radius,41), arg=seq(pi,-pi,length=41))

}
#絶対値関数(方形)
ABS_cmp<-function(Radius){

#極座標系における正方形

cx01A<-seq(-1,0,length=11)
cx01B<-seq(0,1,length=11)
cx01C<-rev(seq(0,1,length=11))
cx01D<-rev(seq(-1,0,length=11))
cx01<-c(cx01A,cx01B[2:11],cx01C[2:11],cx01D[2:11])

cy01A<-seq(0,1,length=11)
cy01B<-rev(seq(0,1,length=11))
cy01C<-rev(seq(-1,0,length=11))
cy01D<-seq(-1,0,length=11)
cy01<-c(cy01A,cy01B[2:11],cy01C[2:11],cy01D[2:11])

complex(re=Radius*cx01, im=Radius*cy01)

}

#方形関数

Square_cmp<-function(Radius){

#極座標系における正方形

cx02A<-rep(-1,11)
cx02B<-seq(-1,1,length=11)
cx02C<-rep(1,11)
cx02D<-rev(seq(-1,1,length=11))
cx02<-c(cx02A[6:10],cx02B[1:10],cx02C[1:10],cx02D[1:10],cx02A[1:6])

cy02A<-seq(-1,1,length=11)
cy02B<-rep(1,11)
cy02C<-rev(seq(-1,1,length=11))
cy02D<-rep(-1,11)
cy02<-c(cy02A[6:10],cy02B[1:10],cy02C[1:10],cy02D[1:10],cy02A[1:6])

complex(re=Radius*cx02, im=Radius*cy02)

}
CC01<-Circle_cmp(1)
RC01<-RevC_cmp(1)
AC01<-ABS_cmp(1)
SC01<-Square_cmp(1)
#極座標系区分(-pi/2→pi/2)
Ind01<-11:31
c01<-c(CC01[Ind01],AC01[Ind01],SC01[Ind01])
plot(c01,asp=1,xlim=c(-1,1),ylim=c(-1,1),type="l",main="Polar Coordinates System r(θ)",xlab="Real",ylab="Imaginary",col=c(200,200,200))
#極座標系区分(-pi/2→-pi)
par(new=T)#上書き指定

Ind02<-1:11
c02<-c(CC01[Ind02],AC01[Ind02],SC01[Ind02])
plot(c02,asp=1,xlim=c(-1,1),ylim=c(-1,1),type="l",main="",xlab="",ylab="",col=c(200,200,200))

#極座標系区分(pi/2→pi)
par(new=T)#上書き指定

Ind03<-31:41
c03<-c(CC01[Ind03],AC01[Ind03],SC01[Ind03])
plot(c03,asp=1,xlim=c(-1,1),ylim=c(-1,1),type="l",main="",xlab="",ylab="",col=c(200,200,200))

#放物線の追加

s00=seq(-1,1,length=41)
s01<-complex(re=s00,im=s00^2)
s02<-complex(re=s00^2,im=s00)
par(new=T)#上書き指定
plot(s01,type="l",asp=1,xlim=c(-1,1),ylim=c(-1,1),main="",xlab="",ylab="",col=rgb(0,0,1))
par(new=T)#上書き指定
plot(-s01,type="l",asp=1,xlim=c(-1,1),ylim=c(-1,1),main="",xlab="",ylab="",col=rgb(1,0,0))
par(new=T)#上書き指定
plot(s02,type="l",asp=1,xlim=c(-1,1),ylim=c(-1,1),main="",xlab="",ylab="",col=rgb(0,1,0))
par(new=T)#上書き指定
plot(-s02,type="l",asp=1,xlim=c(-1,1),ylim=c(-1,1),main="",xlab="",ylab="",col=rgb(1,1,0))

segments(-7,-7,7,7,col=rgb(0,0,0))
segments(-7,7,7,-7,col=rgb(0,0,0))

abline(h=0,col=c(200,200,200))
abline(v=0,col=c(200,200,200)) 
#凡例を書き添える

legend("bottomright", legend = c("y=x^2","y=-x^2","y=sqrt(x)","y=-sqrt(x)","y=x/y=-x"), col=c(rgb(0,0,1),rgb(1,0,0),rgb(0,1,0),rgb(1,1,0),rgb(0,0,0)),lty =c(1,1,1,1),cex=0.8)
```
何だか「<font color=purple>単位円上の円描画関数</font><font color=green>y=sqrt(1-x^2)</font><font color=purple>が半円しか描けない問題</font>」も「<font color=green>N^(1/x)</font><font color=purple>関数で</font><font color=green>N<0</font><font color=purple>の計算が出来ない問題</font>」も、大元は「<font color=purple>符号概念を導入した円は片側からは反面しか見えない</font>」問題に帰着する気がしてきました。
[【初心者向け】線形関数や絶対値関数 - Qiita](https://qiita.com/ochimusha01/items/8b7050e65b599f9e15c2)
![image.gif](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn-ak.f.st-hatena.com%252Fimages%252Ffotolife%252Fo%252Fochimusha01%252F20201116%252F20201116230848.gif%3Fixlib%3Drb-1.2.2%26auto%3Dformat%26gif-q%3D60%26q%3D75%26w%3D1400%26fit%3Dmax%26s%3D0489492d3b778bcf1b6c8b3886af31c4?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=ff1f33c7e4f0eb14a52e7b7942a6c543)
![image.gif](https://qiita-user-contents.imgix.net/https%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Fo%2Fochimusha01%2F20201113%2F20201113204552.gif?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=dccc767e2633b1828bd1f1d16d13da7d)
![image.gif](https://qiita-user-contents.imgix.net/https%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Fo%2Fochimusha01%2F20201113%2F20201113205243.gif?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=a83170b3fcb64c743776da278665b198)
逆をいえば「<font color=purple>符号概念導入以前の円なら裏側まで見通せる</font>」という事です。それでも見た目がそんなに変わらないのが興味深い?
[【初心者向け】誤差関数(ERF)と相補誤差関数 (ERFC)。 - Qiita](https://qiita.com/ochimusha01/items/ee8b32e4b2cc7ce4acb0)
![image.gif](https://qiita-user-contents.imgix.net/https%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Fo%2Fochimusha01%2F20201113%2F20201113111114.gif?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=61cd086301e6726443f4e09a8ff74256)
また<font color=green>N^x</font>**系関数**と、その**逆関数**たる<font color=green>N^(1/x)</font>**系関数**の**距離**<font color=green>1</font>までの軌跡に注目すると**距離関数**めいた振る舞いが浮かび上がってきます。

* <font color=green>N^x</font>**系関数**は<font color=green>y=0</font>から出発し**第一象限**においては{<font color=green>0,0</font>}{<font color=green>1,0</font>}{<font color=green>1,1</font>}へと収束していく。その間、軌跡の残り部分は**第二象限**と**第三象限**(<font color=blue>x<0</font>)を往復する(<font color=blue>実数値は偶数の時二象限、奇数の時に第三象限。虚数値は両者を半分のピッチで往復</font>)。
* (<font color=blue>一次関数y=x/y=-xの軌跡を軸に回転させたN^x系関数の逆関数たる</font>)<font color=green>±N^(1/x)</font>**系関数**は<font color=green>x=0</font>から出発し**第一象限**においては{<font color=green>0,0</font>}{<font color=green>0,1</font>}{<font color=green>1,1</font>}へと収束していく。その間、軌跡の残り部分は**第三象限**と**第四象限**(<font color=blue>y<0</font>)を往復する(<font color=blue>実数値は偶数の時四象限、奇数の時に第三象限。虚数値は両者を半分のピッチで往復</font>)。

この数理の具体的解析はこれからですが、最終的には両者を一緒くたに扱える可能性も出てきたという事です。
[【Rで球面幾何学】そもそも複素数Xi（x*(0+1i)）はどう振る舞う？ - Qiita](https://qiita.com/ochimusha01/items/3130ceb4a3500bfeb9d6)
![image.gif](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F597772%2F46bf154d-6afa-f4a8-4aee-ca7e8710754f.gif?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=29a874fd198380188398d6eb6bbeae08)
![image.gif](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.ap-northeast-1.amazonaws.com%2F0%2F597772%2Fceded7a4-047b-5776-d1ad-90d09005a897.gif?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=4b128986dd8e1f30d3e2f5547d5aea2b)
ちなみに**双曲線関数**<font color=green>Cosh(x)</font>,<font color=green>Sinh(x)</font>,<font color=green>Tanh(x)</font>を置いてみましたが、あまり面白い結果にはなりませんでした。何かこのトピックに関する**離心率**(<font color=blue>Eccentricity</font>)についての手掛かりとか得られるかと思ったのですが…
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/73a3c41d-93ee-392b-ba7f-3c0b12a7e991.png)

```R
#円関数
Circle_cmp<-function(Radius){

complex(mod=rep(Radius,41), arg=seq(pi,-pi,length=41))

}
#絶対値関数(方形)
ABS_cmp<-function(Radius){
#極座標系における正方形
cx01A<-seq(-1,0,length=11)
cx01B<-seq(0,1,length=11)
cx01C<-rev(seq(0,1,length=11))
cx01D<-rev(seq(-1,0,length=11))
cx01<-c(cx01A,cx01B[2:11],cx01C[2:11],cx01D[2:11])
cy01A<-seq(0,1,length=11)
cy01B<-rev(seq(0,1,length=11))
cy01C<-rev(seq(-1,0,length=11))
cy01D<-seq(-1,0,length=11)
cy01<-c(cy01A,cy01B[2:11],cy01C[2:11],cy01D[2:11])
complex(re=Radius*cx01, im=Radius*cy01)
}

#方形関数
Square_cmp<-function(Radius){
#極座標系における正方形
cx02A<-rep(-1,11)
cx02B<-seq(-1,1,length=11)
cx02C<-rep(1,11)
cx02D<-rev(seq(-1,1,length=11))
cx02<-c(cx02A[6:10],cx02B[1:10],cx02C[1:10],cx02D[1:10],cx02A[1:6])
cy02A<-seq(-1,1,length=11)
cy02B<-rep(1,11)
cy02C<-rev(seq(-1,1,length=11))
cy02D<-rep(-1,11)
cy02<-c(cy02A[6:10],cy02B[1:10],cy02C[1:10],cy02D[1:10],cy02A[1:6])
complex(re=Radius*cx02, im=Radius*cy02)
}
CC01<-Circle_cmp(1)
RC01<-RevC_cmp(1)
AC01<-ABS_cmp(1)
SC01<-Square_cmp(1)
#極座標系区分(-pi/2→pi/2)
Ind01<-11:31
c01<-c(CC01[Ind01],AC01[Ind01],SC01[Ind01])
plot(c01,asp=1,xlim=c(-1,1),ylim=c(-1,1),type="l",main="Polar Coordinates System r(θ)",xlab="Real",ylab="Imaginary",col=c(200,200,200))
#極座標系区分(-pi/2→-pi)
par(new=T)#上書き指定

Ind02<-1:11
c02<-c(CC01[Ind02],AC01[Ind02],SC01[Ind02])
plot(c02,asp=1,xlim=c(-1,1),ylim=c(-1,1),type="l",main="",xlab="",ylab="",col=c(200,200,200))

#極座標系区分(pi/2→pi)
par(new=T)#上書き指定

Ind03<-31:41
c03<-c(CC01[Ind03],AC01[Ind03],SC01[Ind03])
plot(c03,asp=1,xlim=c(-1,1),ylim=c(-1,1),type="l",main="",xlab="",ylab="",col=c(200,200,200))

#放物線の追加
s00=seq(-1,1,length=41)
s01<-complex(re=s00,im=s00^2)
s02<-complex(re=s00^2,im=s00)
par(new=T)#上書き指定
plot(s01,type="l",asp=1,xlim=c(-1,1),ylim=c(-1,1),main="",xlab="",ylab="",col=rgb(0,0,0))
par(new=T)#上書き指定
plot(-s01,type="l",asp=1,xlim=c(-1,1),ylim=c(-1,1),main="",xlab="",ylab="",col=rgb(0,0,0))
par(new=T)#上書き指定
plot(s02,type="l",asp=1,xlim=c(-1,1),ylim=c(-1,1),main="",xlab="",ylab="",col=rgb(0,0,0))
par(new=T)#上書き指定
plot(-s02,type="l",asp=1,xlim=c(-1,1),ylim=c(-1,1),main="",xlab="",ylab="",col=rgb(0,0,0))

#双曲線の追加

s03<-complex(re=s00,im=(exp(s00)+exp(-s00))/2)
s04<-complex(re=s00,im=(exp(s00)-exp(-s00))/2)
s05<-complex(re=s00,im=(exp(s00)-exp(-s00))/(exp(s00)+exp(-s00)))

par(new=T)#上書き指定
plot(s03,type="l",asp=1,xlim=c(-1,1),ylim=c(-1,1),main="",xlab="",ylab="",col=rgb(0,0,1))

par(new=T)#上書き指定
plot(s04,type="l",asp=1,xlim=c(-1,1),ylim=c(-1,1),main="",xlab="",ylab="",col=rgb(1,0,0))

par(new=T)#上書き指定
plot(s05,type="l",asp=1,xlim=c(-1,1),ylim=c(-1,1),main="",xlab="",ylab="",col=rgb(0,1,0))

segments(-7,-7,7,7,col=rgb(0,0,0))
segments(-7,7,7,-7,col=rgb(0,0,0))

abline(h=0,col=c(200,200,200))
abline(v=0,col=c(200,200,200)) 
#凡例を書き添える

legend("bottomright", legend = c("y=Cosh(x)","y=Sinh(x)","y=Tanh(x)"), col=c(rgb(0,0,1),rgb(1,0,0),rgb(0,1,0)),lty =c(1,1,1),cex=0.8)
```
**双曲線**(<font color=blue>Hyperbola</font>)そのものを置いても似た様な結果。何かこう、このアプローチでは楕円も含む「**円錐的連続性**」みたいなものが片鱗も感じられないというか…
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/c7820a28-4e39-20be-f4b0-7f304b2c416a.png)

```R
#円関数
Circle_cmp<-function(Radius){
complex(mod=rep(Radius,41), arg=seq(pi,-pi,length=41))
}

#絶対値関数(方形)
ABS_cmp<-function(Radius){
#極座標系における正方形
cx01A<-seq(-1,0,length=11)
cx01B<-seq(0,1,length=11)
cx01C<-rev(seq(0,1,length=11))
cx01D<-rev(seq(-1,0,length=11))
cx01<-c(cx01A,cx01B[2:11],cx01C[2:11],cx01D[2:11])
cy01A<-seq(0,1,length=11)
cy01B<-rev(seq(0,1,length=11))
cy01C<-rev(seq(-1,0,length=11))
cy01D<-seq(-1,0,length=11)
cy01<-c(cy01A,cy01B[2:11],cy01C[2:11],cy01D[2:11])
complex(re=Radius*cx01, im=Radius*cy01)
}

#方形関数
Square_cmp<-function(Radius){
#極座標系における正方形
cx02A<-rep(-1,11)
cx02B<-seq(-1,1,length=11)
cx02C<-rep(1,11)
cx02D<-rev(seq(-1,1,length=11))
cx02<-c(cx02A[6:10],cx02B[1:10],cx02C[1:10],cx02D[1:10],cx02A[1:6])
cy02A<-seq(-1,1,length=11)
cy02B<-rep(1,11)
cy02C<-rev(seq(-1,1,length=11))
cy02D<-rep(-1,11)
cy02<-c(cy02A[6:10],cy02B[1:10],cy02C[1:10],cy02D[1:10],cy02A[1:6])
complex(re=Radius*cx02, im=Radius*cy02)
}

CC01<-Circle_cmp(1)
RC01<-RevC_cmp(1)
AC01<-ABS_cmp(1)
SC01<-Square_cmp(1)
#極座標系区分(-pi/2→pi/2)
Ind01<-11:31
c01<-c(CC01[Ind01],AC01[Ind01],SC01[Ind01])
plot(c01,asp=1,xlim=c(-1,1),ylim=c(-1,1),type="l",main="Polar Coordinates System r(θ)",xlab="Real",ylab="Imaginary",col=c(200,200,200))
#極座標系区分(-pi/2→-pi)
par(new=T)#上書き指定
Ind02<-1:11
c02<-c(CC01[Ind02],AC01[Ind02],SC01[Ind02])
plot(c02,asp=1,xlim=c(-1,1),ylim=c(-1,1),type="l",main="",xlab="",ylab="",col=c(200,200,200))

#極座標系区分(pi/2→pi)
par(new=T)#上書き指定
Ind03<-31:41
c03<-c(CC01[Ind03],AC01[Ind03],SC01[Ind03])
plot(c03,asp=1,xlim=c(-1,1),ylim=c(-1,1),type="l",main="",xlab="",ylab="",col=c(200,200,200))

#放物線の追加
s00=seq(-1,1,length=41)
s01<-complex(re=s00,im=s00^2)
s02<-complex(re=s00^2,im=s00)
par(new=T)#上書き指定
plot(s01,type="l",asp=1,xlim=c(-1,1),ylim=c(-1,1),main="",xlab="",ylab="",col=rgb(0,0,0))
par(new=T)#上書き指定
plot(-s01,type="l",asp=1,xlim=c(-1,1),ylim=c(-1,1),main="",xlab="",ylab="",col=rgb(0,0,0))
par(new=T)#上書き指定
plot(s02,type="l",asp=1,xlim=c(-1,1),ylim=c(-1,1),main="",xlab="",ylab="",col=rgb(0,0,0))
par(new=T)#上書き指定
plot(-s02,type="l",asp=1,xlim=c(-1,1),ylim=c(-1,1),main="",xlab="",ylab="",col=rgb(0,0,0))

#双曲線の追加
s03<-complex(re=(exp(s00)+exp(-s00))/2,im=(exp(s00)-exp(-s00))/2)
s04<-complex(re=(-(exp(s00)+exp(-s00))/2),im=(exp(s00)-exp(-s00))/2)
par(new=T)#上書き指定
plot(s03,type="l",asp=1,xlim=c(-1,1),ylim=c(-1,1),main="",xlab="",ylab="",col=rgb(0,0,1))
par(new=T)#上書き指定
plot(s04,type="l",asp=1,xlim=c(-1,1),ylim=c(-1,1),main="",xlab="",ylab="",col=rgb(1,0,0))
segments(-7,-7,7,7,col=rgb(0,0,0))
segments(-7,7,7,-7,col=rgb(0,0,0))
abline(h=0,col=c(200,200,200))
abline(v=0,col=c(200,200,200)) 
#凡例を書き添える
legend("bottomright", legend = c("Hyperbola","-Hyperbola"), col=c(rgb(0,0,1),rgb(1,0,0)),lty =c(1,1,1),cex=0.8)
```
この話については、以下のサイトのアプローチ辺りが有望そうです。
[二次曲線の性質](http://fnorio.com/0069quadratic_curve1/quadratic_curve1.htm)
そんな感じで以下続報…