関数f(x)のグラフ・数値表計算機

関数f(x)のグラフ・数値表計算機

xだけを変数とする関数f(x)を安全に入力し、指定区間の両端を含む最大201点をグラフ・数値表・TSVで確認します。

入力

変数xだけを使う安全な実数式。許可制の演算子・定数・一引数関数で最大200文字です。

絶対値1,000,000以下。もう一方の端点と異なり、区間幅も1,000,000以下にします。

絶対値1,000,000以下。もう一方の端点と異なり、区間幅も1,000,000以下にします。

1〜200の整数。aとbの両端を含むため結果はn+1点です。

使い方

  1. 関数式へ変数xだけを使った式を入力します。2関数ページではf(x)とg(x)を別々に入力します。
  2. 区間の始点a、終点b、1〜200の整数で分割数nを指定します。a>bの逆向きも可能です。
  3. 「計算する」を押し、SVGの凡例、未定義セル、展開できる数値表を確認します。
  4. 必要に応じてTSVをコピーし、区間を狭めるかnを増やして標本依存性を再確認します。

計算式・考え方

h=(b−a)/n、x_i=a+i h(i=0,…,n)で両端を含むn+1点を作り、各点でf(x)を評価します。最終点x_nは丸め累積を避けてbを直接使います。定義域外・0除算・overflow・|f(x)|>1e100はそのセルを未定義にして線を分断します。

注意事項

  • このページは任意の一変数関数を手早く標本化し、式を変えながら形を確かめたい人向けの関数グラフ計算機です。f(x)へ式、aとbへ表示したい区間、nへ分割数を入れると、始点から終点までの有限個の値を計算します。既定例x−cos(x)では直線xとcos(x)の差を観察でき、負の区間から正の区間へ移るときの符号や傾向を数値表でも追えます。
  • 標本格子はh=(b−a)/n、x_i=a+i h(i=0,1,…,n)です。点数は分割数より1つ多いn+1点で、最初は必ずa、最後は丸めを累積させずbを直接採用します。例えばa=−10、b=10、n=50ならh=0.4で51点です。逆向きにa>bとした場合はhが負になり、入力順のままxが減る表とグラフを作ります。a=bは幅のない区間なので受け付けません。
  • 式で変数として使える名前はxだけです。定数pi、π、e、加減乗除、右結合のべき乗^、丸括弧、単項の正負、abs、sqrt、exp、ln、log、log10、sin、cos、tan、asin、acos、atan、sinh、cosh、tanh、floor、ceilを許可制で解釈します。暗黙の掛け算は行わないため2xではなく2*xと書き、自然対数はln(x)またはlog(x)と入力してください。
  • 入力式をJavaScriptコードとして実行することはありません。専用パーサーが最大200文字、128トークン、入れ子32段の範囲で字句と構文を読み、許可された演算子・定数・一引数関数だけを逆ポーランド表現へ変換します。eval、new Function、代入、配列、オブジェクト、プロパティ参照、セミコロン、引用符、コメント、未知の名前は拒否します。式へ命令文を混ぜても実行されません。
  • 始点aと終点bはそれぞれ絶対値1,000,000以下、区間幅|b−a|も1,000,000以下、nは1〜200の整数です。1分割なら両端2点、200分割なら201点になります。関数の有限な評価値は絶対値1e100以下に制限し、それを超える巨大値、Infinity、NaNは描画値へ丸め込まず未定義として扱います。この上限は正しい数学的定義域を示すものではなく、表示と端末資源を予測可能に保つ安全境界です。
  • sqrt(x)のx<0、ln(x)のx≤0、1/xのx=0のように特定の標本点だけで実数値を得られない場合、そのセルを「未定義」と表示して前後の線を分断します。構文そのものが壊れている式、未知名を含む式、注入文字を含む式は点ごとの問題ではないため全体エラーです。すべての標本点が未定義なら意味のある系列がないので成功表示にせず、区間または式の見直しを案内します。
  • グラフは標本点を直線で結ぶ折れ線であり、解析的な連続性を証明しません。1/xを粗い格子で描くと、x=0が標本点に含まれない場合、極をまたいだ左右の有限値が一本の線で結ばれることがあります。同じ理由で標本点間の根、極、尖点、狭いピーク、高周波の振動を見逃す可能性があります。線が滑らかに見えても関数が区間全体で連続、単調、微分可能だとは判断できません。
  • 零点を探す用途では、表に現れる符号変化は候補区間を示すだけです。連続性が別途分かっているときに限り符号変化から根の存在を論じられ、極をまたぐ符号変化は根ではありません。この計算機は根の位置を補間せず、誤差幅も返しません。候補が見つかったら区間を狭めて再標本化するか、二分法など停止条件を持つ零点計算機で独立に確認してください。
  • nを増やすと標本間隔は細かくなりますが、結果の正しさを自動保証するものではありません。n=50と100、100と200を比べ、ピーク位置、符号変化、未定義セル、端点値が安定するかを確認してください。200分割でも区間が広ければ細部を落とします。一方、区間を極端に狭くするとbinary64の丸めや近い数の差による桁落ちが目立つため、式の変形や高精度計算との照合が必要です。
  • SVGの縦横範囲は今回得られた有限標本値から自動調整します。極の近くの巨大値が一つあると、それ以外の変化が押しつぶされて平坦に見える場合があります。そのときは数値表を開き、値の桁と未定義位置を確かめてから、関心区間を分けて再計算してください。グラフの見栄えに合わせた外れ値除去や対数軸変換は自動では行わず、入力した標本値をそのまま比較可能にします。
  • 結果欄には純SVGグラフ、系列凡例、見出し付きの代替数値表、TSVコピーを用意します。表は横スクロール可能で、キーボードから展開・移動でき、未定義セルを文字でも識別できます。画像だけでは正確な値や欠損を伝えにくいため、レポートへ使う際はTSVを表計算ソフトへ貼り、式、a、b、n、計算日時も一緒に記録すると再現性を保ちやすくなります。
  • このページは概形確認、授業の検算、式変形前後の比較、数値計算の入力範囲選びに適しています。測定器校正、金融取引、医療判断、安全設計のように誤差が結果へ直結する用途では、単独の折れ線を根拠にしないでください。解析解、単位、既知の端点、対称性、単調性、別実装の結果を照合し、必要な精度・丸め・例外処理を定めた専門環境へ切り替えることが重要です。
  • 周期関数を調べる場合は、表示区間に何周期入るかと一周期当たりの標本点数を先に見積もります。周期に対して刻みが粗いと、実際とは異なるゆっくりした波に見える折り返しが起こり得ます。sinやcosを入力しただけで周期や位相を自動解析する機能はありません。区間を一周期程度へ狭めた結果と広い区間の結果を比べ、山と谷の位置が格子変更で移動しないか確認してください。
  • floorやceil、absのように滑らかでない関数も標本値としては計算できます。ただし折れ線は跳びや角を斜めの線に見せることがあり、微分可能性を表現しません。区分的な挙動を調べるときは切替点を端点や標本点へ含め、左右の値を数値表で読む必要があります。グラフ表示は式の定義を置き換えないため、どの点を含むかという数学上の条件を別途記録してください。
  • 有限個のbinary64標本を結ぶ表示で、連続性、根、極、標本間の形、誤差を保証しません。

よくある質問

標本点の間にある根や極もグラフから分かりますか?

保証できません。折れ線は有限個の値を結ぶだけで、根や極を探索しません。特に極が標本点と一致しないと線が極をまたぐ場合があります。区間を狭めてnを変え、数値表と専用の零点探索・特異点解析を併用してください。

式が一部だけ未定義のときはどう表示されますか?

その標本セルを未定義と記し、前後の折れ線を接続しません。全点が未定義なら成功結果を表示しません。構文エラーや未知名は点単位ではなく式全体の入力エラーです。

分割数200なら正確な曲線になりますか?

いいえ。201点はこのページの処理上限で、連続性・補間誤差・極や根の検出を保証しません。nと区間を変えた再計算、解析式、専門ライブラリとの照合が必要です。

式の構文解析、最大201点の評価、SVG描画、代替表、TSV生成はすべてclient-onlyでブラウザ内だけで行います。入力式と結果を外部APIへ送信・保存せず、fetch、XHR、WebSocket、外部CDNを使用しません。