中学生になったとき、y = x2 のグラフの美しさに感動しました。その後、三角関数や媒介変数などを用いたグラフに接しました。特に、簡単な数式なのに、思いがけないグラフになることに感動を覚えたものです。
その後、長い時間がたち、年金生活になりました。HTMLのCANVAS機能を知り、昔の思い出がよみがえって、若い人にその感動を押し付けようとして、このようなページにしてしまったという次第です。
感動しない人でも、ちょっとしたグラフを描きたいことがあるでしょう。フォームに式を入れるだけでグラフが描けるツールにもなっています。
さらに、自分でもグラフ作図のプログラムを書きたい人には、「コード表示」によりソースコードが見えるようにしました。
これらのプログラムでは、CANVAS機能を自作ライブラリの canvas.js を用いています(
使用解説書)。
「コード表示」「canvasxy」の著作権は私にありますが、適当にコピーして改変してお使いになるのは自由です。しかし、信頼性は保証していないし、ご利用による損害には責任を持ちません。
| ファイル名 | 入力項目 | 数式の特徴 |
| exp | 陽関数 y=f(x) | |
| exp010 | 数式 | y=f(x) 型の任意の数式を与える |
| exp011 | 数式 | 同上 パラメタ指定による複数グラフ |
| exp012 | 数式 | 同上 複数の y=f(x) 指定による複数グラフ |
| exp020 | 数式 | y=f(x) (f(x)は三角関数)の任意の数式を与える (機能はexp010と同じだが、三角関数と特徴である横長の表示範囲にした) |
| exp021 | 数式 | 双曲線関数( cosh(), sinh(), tanh() ) |
| exp030 | 数式 | y2=f(x) 型の任意の数式を与える (厳密には陽関数ではないが) |
| exp031 | 自動 | y2=f(x) 型 ハート形 |
| exp032 | 自動 | y2=f(x) 型 楕円・双曲線と焦点 |
| exp110 | 数式 | y=f(x) 型のグラフと微分・積分のグラフ |
| imp | 陰関数 f(x,y)=0 | |
| imp010 | 数式 | f(x,y)=0 型の任意の数式を与える |
| imp110 | パラメタ | 二次曲線 ax2+2bxy+cy2=1 |
| imp111 | パラメタ | 一般の楕円と双曲線 ax2+2hxy+by2+2gx+2fy+c=0 |
| imp120 | パラメタ | xa±ya=1 |
| imp130 | 自動 | (x2+y2+1)2 - 4x2 = k カッシーニの卵形線 |
| imp140 | パラメタ | 等高線を色で表示 f(x,y) = k |
| imp141 | パラメタ | 捕食-被食関係モデルの解曲線 F(x,y)=d*x-c*log(x)+b*y-a*log(y)=K |
| imp310 | 自動 | sin(x) + sin(2y) + sin(3x) + sin(4y) + sin(5x) = 0 (トーテムポール) |
| imp320 | 自動 | x2y - y3 - x4 = k (猿面) |
| par | 媒介変数 x=f(t), y=g(t) | |
| par010 | 数式 | x=f(t), y=g(t) 型の任意の数式を与える |
| par210 | パラメタ | x=cos(at), y=sin(bt) |
| par310 | 自動 | x = t - sin(t) サイクロイド y = 1 - cos(t) |
| par320 | 自動 | x = 2cos(t)-cos(2t) エピ・サイクロイド(固定円と回転円の半径1) y = 2sin(t)-sin(2t) |
| par321 | 自動 | x = (1+r)*cos(t) - r*cos((1+r)/r*t) エピ・サイクロイド(回転円の半径r) y = (1+r)*sin(t) - r*sin((1+r)/r*t) |
| par322 | 自動 | x = (1-r)*cos(t) + r*cos((1-r)/r*t) ハイポ・サイクロイド y = (1-r)*sin(t) - r*sin((1-r)/r*t) |
| par323 | 自動 | x = cos(t)+t*sin(t) 円の伸開線 y = sin(t)-t*cos(t) |
| par340 | 自動 | x = R*cos(t/A) + r*cos(t/a) R:地球の公転半径、r:月の公転半径 R/r=2 y = R*sin(t/A) + r*sin(t/a) A:地球の公転周期、a:月の公転周期 A/a=6 |
| pol | 極座標表示 r=f(t): x=r*cos(t), y=r*sin(t) | |
| pol010 | 数式 | r=f(x) 型の任意の数式を与える |
| pol110 | パラメタ | r=t 時間とともに原点からの距離が長くなる=螺旋 |
| pol111 | 自動 | 螺旋と接線による図形 | pol112 | 自動 | 4匹の犬(等角螺旋、ベルヌーイ螺旋) |
| pol120 | パラメタ | r=1/ta 時間とともに原点からの距離が短くなる |
| pol130 | パラメタ | r=t/(t-a) |
| pol210 | 自動 | r = cos(t) + a (蝸牛線、リマゾン) |
| pol220 | パラメタ | r = sin(a*t) (正葉線) |
| pol230 | パラメタ | r = a*cos(t) + cos(a*t) |
| pol310 | 自動 | r1 = 2*(0.5*cos(10*t)+1)*sin(5*t)2 + 0.1 r2 = (1/7)*(0.5*cos(10*t)+1) コスモス |
| pol320 | 自動 | r = sin(t) + cos(t2) (孔雀) |
| uvw | 3次元(u,v,w)のグラフ | |
| uvw010 | なし | 3次元グラフの留意事項 |
| uvw110 | 数式 | 陽関数 w=f(u,v) のグラフ |
| uvw210 | 数式 | 媒介関数 u=fu(p,q), v=fv(p.q), w=fw(p,q) のグラフ |
| uvw310 | 数式 | 陰関数 f(u,v,w) = 0 のグラフ |
| uvw410 | 数式 | 回転体のグラフ |
| com | 複素数のグラフ | |
| com010 | なし | 複素数の四則演算 |
| com020 | なし | 複素数の二乗 |
| com021 | なし | 複素数の累乗 |
| com030 | なし | 複素数*(1+ai), 複素数*(a+1i), |
| com040 | なし | 複素数のn乗根 |
| com110 | なし | 複素数の漸化式(マンデルブロ集合) |
| unclassified | 未分類 | |
| bezie | パラメタ | ベジェ曲線(2次、3次) |
| dif210 | 自動 | ロジステック曲線 差分方程式 |
| dif220 | パラメタ | 微分方程式、ローレンツ方程式 |