&size(24){''pszahyou環境''};~
&size(24){''pszahyou*環境''};
 picture環境を拡張したもので,座標平面を設定します。
 zahyou環境が,tpic specials によって記述されるのに対し,
 pszahyou環境は,
   PostScript によって記述された EPSファイル
 を作成し,それを読み込みます。
#contents
#br

*定義されているスタイルファイル [#y949f1bd]
emathPs.sty

*書式 [#v45b281a]
 \begin{pszahyou}[#1](#2,#3)(#4,#5)
 ..
 \end{pszahyou}
 座標平面を設定し,座標軸を描画します。

 \begin{pszahyou*}[#1](#2,#3)(#4,#5)
 ..
 \end{pszahyou*}
 座標軸を描画しません。
-#1: オプション引数で key=val の形式
-#2: x座標の下限 (\xmin に保存される)
-#3: x座標の上限 (\xmax に保存される)
-#4: y座標の下限 (\ymin に保存される)
-#5: y座標の上限 (\ymax に保存される)

#1 における有効な key は
:[[borderwidth>#borderwidth]]|描画領域を拡げます。
//:[[debug>#debug]]|eps ファイルを作成し直し,zahyou(*)環境の終りに eps を読み込みます。
//:[[ex>#syakou]]|斜交座標におけるx軸の単位ベクトルを指定します。(要:emathPha.sty)
//:[[ey>#syakou]]|斜交座標におけるy軸の単位ベクトルを指定します。(要:emathPha.sty)
:[[gentenhaiti>#gentenhaiti]]|原点記号の位置を変更します。~
デフォルトは [sw]
:[[gentenkigou>#gentenkigou]]|原点記号を変更します。~
デフォルトは O
:[[getxyrange>#getxyrange]]|setxyrange で設定した描画範囲を受け取ります。
:[[haiti>#haiti]]|ベースラインを変更します。
:[[hidariyohaku>#yohaku]]|描画領域の左方に余白を設定します。
:[[migiyohaku>#yohaku]]|描画領域の右方に余白を設定します。
:[[sitayohaku>#yohaku]]|描画領域の下方に余白を設定します。
:[[tatezikuhaiti>#gentenhaiti]]|縦軸記号の位置を変更します。~
デフォルトは (-3pt,0)[rt]
:[[tatezikukigou>#yokozikukigou]]|縦軸の名称を変更します。~
デフォルトは $y$
:[[ueyohaku>#yohaku]]|描画領域の上方に余白を設定します。
:[[ul>#unitlength]]|単位長を変更します。~
デフォルトは 1pt
:[[xscale>#yscale]]|横軸方向の単位長を変更します。(要:emathPxy.sty)
:[[yohaku>#yohaku]]|描画領域の上下左右の余白を一括して変更します。
:[[yokozikuhaiti>#gentenhaiti]]|横軸記号の位置を変更します。~
デフォルトは (0,-3pt)[rt]
:[[yokozikukigou>#yokozikukigou]]|横軸の名称を変更します。~
デフォルトは $x$
:[[yscale>#yscale]]|縦軸方向の単位長を変更します。(要:emathPxy.sty)
:[[zikusensyu>#zikusensyu]]|描画する座標軸の線種を変更します。~
:[[zikusensyu>#zikusensyu]]|座標軸を描画する線種を変更します。~
デフォルトは \arrowdrawline
-このコマンドを実行後,原点が \O に,座標軸の両端が~
  [[\XMAX, \XMIN, \YMAX, \YMIN>#XMAX]] に,~
座標平面の右上,左上,左下,右下が~
  [[\RT, \LT, \LB, \RB>#XMAX]] に~
保存されています。

*例 [#oaf56754]
**基本例 [#xe8f37f2]
 x座標,y座標の範囲を指定して,座標平面を描画します。
#ref(pszahyou01.png)
**保存されている点 [#XMAX]
 pszahyou(*)環境を実行後,原点は \O に,
 座標軸の両端は \XMAX などに,右上は \RT などに
 に保存されています。
#ref(XMAX01.png)
**単位長の変更 [#unitlength]
 pszahyou環境の単位長は,その時点の \unitlength です。
 (LaTeX のデフォルトは 1pt)
 これを変更するオプションが [ul=..] です。
 右辺値は単位を伴った長さです。
 pszahyou環境では,単位長を 1cm 程度にとることを推奨しています。
 その理由は,線分の長さ計算などでオーバーフローが発生するのを防ぐためです。
 (TeX では 128^2 でオーバーフローします。)
#ref(unitlength01.png)
-(注1)\setlength{\unitlength}{10mm}などと \unitlength を変更しても同じ効果が得られます。~
-(注2)\setlength{\unitlength}{10mm}など\unitlength の変更は,その後のすべてに影響を与えますが,~
[ul=10mm] オプションによる変更は当該pszahyou環境に限定されます。~
-(注3)両方の変更が指令された場合は,[ul=..]オプションの指定が優先されます。
-(注4)jsarticle クラスなどを使用するときは,長さの単位には true を附加しておくのがよいでしょう:~
【例】ul=10truemm~
単に ul=10mm では,文字サイズが 10pt でない場合,図が伸縮されます。~
更にうるさいことを言えば,線の太さも伸縮されますから~
  \linethickness{0.4truept}~
などとする必要が生ずるかもしれません。
**座標軸 [#d00d2f07]
 pszahyou環境における座標軸は \Drawline ではなく,
 矢線を引くコマンド \ArrowLine で描画されます。
 従って,その太さなどは \linethickness コマンドでは制御できず,
   \setarrowsize
 によって変更しなければなりません。
#ref(zikuhutosa01.png)
-座標軸の描画は,\end{pszahyou} の処理中に行われます。~
したがって,\setarrowsize は \end{pszahyou}の直前に置くのがよいでしょう。
-\setarrowsize については,[[こちら>setarrowsize]] をご覧ください。
***座標軸を描画しない [#g66b601d]
 座標軸を描画したくない場合は,アスタリスク付き環境 pszahyou* を用います。
#ref(zikunasi01.png)
-x軸のみを描画したい場合も,zahyou*環境を用いた上,\drawXaxis コマンドを発行します。~
ただし,このコマンドは座標軸名称を出力しませんから,x軸右端である \XMAX を配置基準点として軸名称を \emathPut で出力します。
#ref(zikunasi02.png)
-軌跡の問題などで,除外点に白丸を付加する場合,除外点が軸上ですと~
pszahyou環境では,軸が最後に描画される関係で,白丸の中を軸が突っ切ります。~
これを回避するには,pszahyou*環境を用いて,適当なタイミングで \drawXYaxis コマンドを発行します。
#ref(zikunasi03.png)
***座標軸の線種変更 [#zikusensyu]
 座標軸は矢線で描画されますが,矢印はつけたくない,という場合は
   zikusensyu=\drawline
 とします。
#ref(zikusensyu01.png)
-このとき,座標軸が太くなることが気に入らない,という場合は~
座標軸の描画が行われるのは \end{pszahyou} の中ですから,その直前に~
  \linethickness, \setlinewidth~
などのコマンドで太さを指定します。

#ref(zikusensyu02.png)
-\setarrowsize を用いて,鏃をつぶしてしまう,という手もあります。

#ref(zikusensyu11.png)
-もっと込み入った注文をつけたいときは~
  pszahyou*環境~
を用いて,~
  \Drawline コマンド~
などにオプションをつけて座標軸を描画します。

#ref(zikusensyu03.png)
***原点記号の変更[#gentenkigou]
 原点記号を変更するオプションが
   gentenkigou=.
 です。右辺値は文字です。
#ref(gentenkigou01.png)
 特に右辺値を空にすれば,原点記号は表示されません。
#ref(gentenkigou02.png)
***座標軸の名称変更 [#yokozikukigou]
 デフォルトでは,座標軸の名称は
   横軸が x, 縦軸が y
 となっていますが,これを変更するオプションが
   yokozikukigou=., tatezikukigou=.
 です。右辺値は文字ですが,数式文字を使用したいときは $..$ とする必要があります。
#ref(yokozikukigou01.png)
***座標軸名称の位置変更 [#gentenhaiti]
 座標軸名称・原点記号の位置を変更するオプションが
   yokozikuhaiti=...
   tatezikuhaiti=...
   gentenhaiti=...
 です。右辺値は \emathPut の文字配置修正オプションです。
#ref(yokozikuhaiti01.png)
-\emathPut の文字位置修正オプションについては,[[\emathPut のページ「基本例」>emathPut#j7621635]]をご覧ください。
-右辺値には,[ , ] が含まれますから,右辺値全体を {...} で括っておかねばなりません。

**余白の設定 [#yohaku]
 下の図では,縦軸記号が描画領域(青緑色(シアン)の長方形)の上に飛び出しています。
 TeX が認識している zahyou環境の大きさは図の青緑色の長方形です。
 したがって,このままでは上の行と重なることも起きるでしょう。
#ref(ueyohaku01.png)
 描画領域の外に余白をつけて,TeX が認識する大きさを大きくするオプションが
   ueyohaku=..
   sitayohaku=..
   hidariyohaku=..
   migiyohaku=..
 です。右辺値は単位を伴う長さですが,無名数も許容されます。その場合,単位は \unitlength と解釈されます。
 上下左右の余白を一括して同じ値に設定する
   yohaku=..
 オプションもあります。

 下の図では
   ueyohaku=1em
 として,青緑色の描画領域の上に 1em の余白を設定しています。
 その結果,TeX が認識するボックスは図の赤色の長方形となります。
#ref(ueyohaku02.png)

**斜交座標 (emathPsa.sty) [#syakou]
 斜交座標を扱う環境 psazahyou は,emathPsa.sty で定義されています。
 pszahyou環境とほとんど同様ですが,
 縦横の比率だけではなく,傾きも変えて斜交座標を描画するオプション
   ex=...
   ey=...
 が付加されています。それぞれ横軸,縦軸の基本ベクトルを与えます:
   (x, y) : 直交成分(無名数)
   r(R,Θ) : R は単位を伴う長さまたは無名数,Θ は度数法の角
#ref(exy11.png)
#ref(exy11p.tex,center,上のソースリスト)
-正三角形網を作図する例です。

#ref(exy12.png)
--平面全体を正三角形で多う例については,[[\kousifill>kousifill]] をご覧ください。
-座標軸を回転した例です。

#ref(exy01.png)
 この場合,原点記号の位置などはデフォルトのままでは不十分なことが多いでしょう。
#ref(exy02.png)

*入試問題から [#nyuusi]
|||LEFT:|c
|2013 センター(地理B)|&ref(0000201301tiriB.tex); |&ref(0000201301tiriB-fig.png);|

*注意事項 [#i706c05f]
+pszahyou(*)環境はネストできません。
+エラーが出た場合は,空の(あるいは不完全な)eps ファイルが作成されてしまう場合があり,思わぬエラーにつながることがあります。~
[[エラーメッセージのページ>エラーメッセージ#boundingbox]]をご覧ください。
*関連事項 [#s44d2794]
-[[zahyou環境]]
RIGHT:&counter;

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS