===================================================================== 【名 称】 TXYGraphコンポーネント ver 1.35(*1) 【登 録 名】 XYGraph135.lzh 【バイト数】 132,300 【制作者名】 関根貞雄 (SNB15176) 【掲載者名】 関根貞雄 (SNB15176) 【動作環境】 Windows98, XP + Delphi 5, 6, 7 (*2) 【掲載月日】 2002.12.01 【作成方法】 LHA にて解凍 【検索キー】 1.%SNB15176 2.#FREE 3.#VCL 4.TXYGraph 【動作確認】 Windows98, XP + Delphi 4, 5, 6, 7 (*2) 【ソフト種】 フリーウェア 【転載条件】 自由ですが、連絡をくれるとうれしい。 ===================================================================== (*1) ver1.21からの変更点は、【主な変更点】をご覧ください。 (*2) Delphi 6, 7 にインストールする場合は、末尾の【Delphi 6 へのインストール】 をご覧ください。 【内容紹介】 1.概要 XYGraphコントロールは、数学の教科書などで普通にみられる X軸 と Y軸 をもった2次元の直交グラフを表現する、Delphi コントロールです。 このコントロールに折れ線や散布図をなどを表すデータ列コンポーネントを 配置して、データを追加することにより簡単に直交グラフを表示することが できます。 使い方については、添付のヘルプファイルをご覧ください。 特徴 ・X軸 と Y軸の交点は任意に指定が可能です。 ・各軸は通常の目盛に加えてπ目盛、対数目盛、%目盛にすることができます。 ・TGraphicControl から派生している。 XYGraph コンポーネントは、私の「2次元関数グラフ作成用アプリケーション GCalc」のために作成、改良されたものです。 バグや独り善がりな部分が多々あると心配ですが、数学の教科書などで普通に みられる X軸 と Y軸をもった直交グラフのコンポーネントが他に見かけなかった ので、思い切って公開することにしました。 ソースコードも添付しました。おかしな点などアドバイスしていただけると ありがたいと思います。 バージョン1.32 で、ズームをサポートしました。  AllowZoom がTrue(デフォルト)のときに、マウスの左ボタンでグラフの左上から  右下にドラッグすると、その領域をズームします。逆向きにドラッグすると、  もとの最大/最小値に復帰します。 2.ファイル構成 XYGraph135.lzh には以下のファイルが梱包されています。 readme.txt このファイル XYGraph.hlp ヘルプファイル XYGraph.cnt ヘルプの目次ファイル GraphReg.pas コンポーネントを登録するためのユニットファイル GraphReg.dcr コンポーネントのリソースファイル xyGraph.pas TXYGraph 及び関連コンポーネントのユニットファイル xySeries.pas データ列コンポーネントのユニットファイル xyGrphEd.pas TXYGraph コンポーネントエディタのユニットファイル xyGphDlg.pas グラフエディタフォームクラスのユニットファイル xyGphDlg.dfm 上記のフォームファイル。以下同様。 xyGphDlg.res 上記のリソースファイル xySerDlg.pas データ列選択ダイアログのユニットファイル xySerDlg.dfm xyLineDg.pas 線種変更ダイアログのユニットファイル xyLineDg.dfm xyAreaDg.pas 内部変更ダイアログのユニットファイル xyAreaDg.dfm gcLineEd.pas 折れ線データ列の編集フォームのユニットファイル gcLineEd.dfm gcMarkEd.pas マーカーデータ列の編集フォームのユニットファイル gcMarkEd.dfm gcArrowE.pas 矢印データ列の編集フォームのユニットファイル gcArrowE.dfm gcBubEd.pas 泡データ列の編集フォームのユニットファイル gcBubEd.dfm gcErrEd.pas エラーバーデータ列の編集フォームのユニットファイル gcErrEd.dfm heverdef.inc 本田勝彦さんによるDelphi, C++Builder のコンパイラ バージョン定義ファイル。 http://member.nifty.ne.jp/~katsuhiko/index.html 3.動作環境 XYGraphコンポーネントはDelphi 4, 5, 6, 7 で動作を確認しました。 動的配列を使っているので、Delphi 4以降でないとコンパイルできません。 4.インストール方法 LHA にてディレクトリ展開つきで解凍してください。 フォルダにある27個のファイルを、ライブラリパスの通ったフォルダにコピー して、GraphReg.pas をインストールして下さい。 5.フリーウェア XYGraphコンポーネントはフリーウェアです。どうぞご自由にお使いください。 ただし、ユーザーの責任において御利用下さい。使用した際に生じるいかなる損害に 対しても作者は責任を負いません。 なお、XYGraphコンポーネント及び関連するコンポーネントの著作権は、関根貞雄が 有します。 6.作者 Delphi ファンの高校教員です。物理を教えています。 Delphi 1 からのユーザーですが、長いこと時間が過ぎたということだけで・・・。 7.連絡先 ご質問やご意見、ご要望、バグ報告、アドバイスなどがありましたら、 ご連絡ください。    メールアドレス sadabo.204@nifty.com   ホームページ http://homepage3.nifty.com/Sadabo 【主な変更点】    Delphi 7 でもコンパイル可能に変更しました。      XYGraphユニット    ・グラフのズームをサポートしました。 (マウスの左ボタンで右下へドラッグ。逆向きでもとに戻る) これに伴って、    プロパティ AllowZoom, Zoomed メソッド ZoomRect, UnZoom イベント OnZoom, OnUnzoom などを新設しました。    ・軸タイトルの角度設定における不具合を修正しました。    ・軸の最大値をゼロにした場合も、フォームファイルに記録されるようにしました。 ・読み込み時に「軸の範囲を超えている」エラーが出るのを修正しました。    XYSeriesユニット    ・TXYGraphSeries.DefinePropertyを削除しました。 (もともと、設計時には保存しないという、おかしな設計でした) 実行時に、TStream.WriteComponentでグラフもデータも丸ごと保存するために まったく個人的な用途だと判断しました。 この代わりに、データ列だけをストリームに書き込み/読み込みできるメソッドを グラフに付け加えました(上記)。 ・TXYPolyPolyLineなど、ヘルプにもないデータ系列を削除しました。 これも私が個人的に必要としていたものです。 XYGphDlgユニット    ・泡データ列の内部を塗りつぶすパターンを選択するコンポボックスに Windows 2000以降で生じた不具合を修正しました。    ・軸の副刻みの個数設定での不具合を直しました。    ・軸の刻みの長さ(TGraphAxis.TickLen)に負の数を許して、逆向きを可能にしました。 ・グラフタイトルの位置の不具合を修正しました。 【Delphi 6,7 へのインストール】   Delphi 5 -> Delphi 6 では、ToolsAPI の DsgnIntf が DesignIntf になる  などの変更がなされています。  (詳しくは、Delphi ヘルプの「Delphi 6 へのアップグレード」で「互換性の問題」  「DsgnIntf の名前変更および関連する変更」をご覧ください)   Delphi 6 へインストールする場合はパッケージの requires リストへ \Lib の   designide を追加してください。(自動的に追加されるようです)