Microsoft PowerPoint 電子情報理工学特論.pptx

Similar documents
Microsoft PowerPoint - 講義資料-mlib

PowerPoint Presentation

GrWinを用いたグラフィクス・プログラミング

A. 表の作成 はじめに 講座テキストページに保存されている表 1 の元データをエクセル 2010 にコピーします (No1) 講座テキスト (Web ページ ) に示した表 1 過去 12 年間の為替と外貨準備の推移 のデータ表を選択する この表 1 を選択した状態で WEB ページの 編集 コピ

Matlab講習会

Microsoft PowerPoint - 説柔5_間勊+C_guide5ï¼›2015ã•’2015æŒ°æŁŽæš’å¯¾å¿œç¢ºèª“æ¸‹ã†¿ã•‚.pptx

プログラミング基礎

PowerPoint プレゼンテーション - 物理学情報処理演習

問 1 図 1 の図形を作るプログラムを作成せよ 但し ウィンドウの大きさは と し 座標の関係は図 2 に示すものとする 図 1 作成する図形 原点 (0,0) (280,0) (80,0) (180,0) (260,0) (380,0) (0,160) 図 2 座標関係 問 2

PowerPoint プレゼンテーション

プログラミング方法論 II 第 14,15 回 ( 担当 : 鈴木伸夫 ) 問題 17. x 座標と y 座標をメンバに持つ構造体 Point を作成せよ 但し座標 は double 型とする typedef struct{ (a) x; (b) y; } Point; 問題 18. 問題 17 の

医用工学概論  Medical Engineering (ME)   3年前期の医用工学概論実習と 合わせ、 医療の現場で使用されている 医用機器を正しく安全に使用するために必要な医用工学(ME)の 基礎知識を習得する。

<4D F736F F F696E74202D E835A838B82C582CC834F CC956082AB95FB2E >

Microsoft Word - 3new.doc

情報システム設計論II ユーザインタフェース(1)

プログラミング基礎

プログラミング実習I

スライド 1

Microsoft Word - gnuplot

グラフを作成

Microsoft PowerPoint - 13th.ppt [互換モード]


C プログラミング演習 1( 再 ) 2 講義では C プログラミングの基本を学び 演習では やや実践的なプログラミングを通して学ぶ

Microsoft PowerPoint - 14Gnuplot.ppt

Microsoft PowerPoint - kougi7.ppt

今回のプログラミングの課題 ( 前回の課題で取り上げた )data.txt の要素をソートして sorted.txt というファイルに書出す ソート (sort) とは : 数の場合 小さいものから大きなもの ( 昇順 ) もしくは 大きなものから小さなもの ( 降順 ) になるよう 並び替えること

Excel2013基礎 数式と表編集

memo

RX ファミリ用 C/C++ コンパイラ V.1.00 Release 02 ご使用上のお願い RX ファミリ用 C/C++ コンパイラの使用上の注意事項 4 件を連絡します #pragma option 使用時の 1 または 2 バイトの整数型の関数戻り値に関する注意事項 (RXC#012) 共用

もう少し詳しい説明 1. アルゴリズムを構築するための 4 枚のサンプル画像を次々と読み込むここで重要なことは画像を順番に読み込むための文字列操作 for 文の番号 i を画像の番号として使用している strcpy は文字列のコピー,sprinf は整数を文字列に変換,strcat は文字列を繋げる

Java講座

7 ポインタ (P.61) ポインタを使うと, メモリ上のデータを直接操作することができる. 例えばデータの変更 やコピーなどが簡単にできる. また処理が高速になる. 7.1 ポインタの概念 変数を次のように宣言すると, int num; メモリにその領域が確保される. 仮にその開始のアドレスを 1

(2) 構造体変数の宣言 文法は次のとおり. struct 構造体タグ名構造体変数名 ; (1) と (2) は同時に行える. struct 構造体タグ名 { データ型変数 1; データ型変数 2;... 構造体変数名 ; 例 : struct STUDENT{ stdata; int id; do

モデリングとは

Microsoft PowerPoint - exp2-02_intro.ppt [互換モード]

Processingをはじめよう

Prog1_6th

JavaプログラミングⅠ

02: 変数と標準入出力

デジタル表現論・第6回

長崎大学大学院生産科学研究科(博士前期課程)

Microsoft Word - 92.doc

Prog1_10th

Microsoft Word - Training10_プリプロセッサ.docx

Microsoft PowerPoint - kougi2.ppt

グラフ作成 暮らしのパソコンいろは 表のデータをグラフにするとデータの内容が視覚化され とてもわかりやすくなります ネット通販売上件数 を表すグラフを作成しましょう Excel2013 資料 C を開いておきましょう 1. グラフの構成要素 ネットショッピング購入状況ネット通販年代別利用

旅のしおり

02: 変数と標準入出力

Microsoft Word - 平成サロン09年2月21日一筆箋作成.doc

Microsoft PowerPoint - kougi6.ppt

1. ページ設定 1) ワードを起動し ページ設定をします 1 ページレイアウト タブを選択します ページ設定 グループの サイズ をク リックし 一覧から A4 を選択します 2 ページ設定 グループの 印刷の向き を クリックします 縦 をクリックします 3 余白 の一覧から 狭い をクリックし

問 2 ( 型変換 ) 次のプログラムを実行しても正しい結果が得られない 何が間違いかを指摘し 正しく修正せよ ただし int サイズが 2 バイト long サイズが 4 バイトの処理系での演算を仮定する #include <stdio.h> int main( void ) { int a =

Microsoft PowerPoint ppt

Microsoft PowerPoint - 09.pptx

4 月 東京都立蔵前工業高等学校平成 30 年度教科 ( 工業 ) 科目 ( プログラミング技術 ) 年間授業計画 教科 :( 工業 ) 科目 :( プログラミング技術 ) 単位数 : 2 単位 対象学年組 :( 第 3 学年電気科 ) 教科担当者 :( 高橋寛 三枝明夫 ) 使用教科書 :( プロ

バイオプログラミング第 1 榊原康文 佐藤健吾 慶應義塾大学理工学部生命情報学科

画像ファイルを扱う これまでに学んだ条件分岐, 繰り返し, 配列, ファイル入出力を使って, 画像を扱うプログラムにチャレンジしてみよう

図表貼り付けの原則 Excel などで処理した図表を Word に貼り付ける際に注意したい事項は以下のようになります Excel グラフ の場合 1. Excel 内で, あらかじめ, グラフエリアの大きさ フォント タイトル 軸ラベルなどを十分調整しておきます 2. タイトルはグラフ内にも入れてお

Microsoft PowerPoint - 5Chap15.ppt

Microsoft Word - Grspes…~…j…}…j…–…A…‰6.0.doc

JavaScriptで プログラミング

プログラミング実習I

Microsoft PowerPoint - kougi9.ppt

cp-7. 配列

PowerPoint プレゼンテーション

02: 変数と標準入出力

pp2018-pp4base

PowerPoint プレゼンテーション

講習No.9

2011年度 大阪大・理系数学

EGS4に対応した粒子軌跡と 計算体系の3次元表示ソフト

gengo1-11

Microsoft PowerPoint - prog03.ppt

ラベルを管理するクラス Label ラベルはクラス Label により管理され 各種設定を行うメソッドが準備されています ラベルの生成 new Label("1. 通常のラベルです "); ラベルのサイズ setprefsize(200,100); ラベル文字が 1. 通常のラベルです で横 200

Taro-ポインタ変数Ⅰ(公開版).j

コンピュータリテラシ

PowerPoint プレゼンテーション

Ⅰ. 外枠の作成 JTrim ファイルを起動しておきます 1)100*100 の黒を新規作成して背景を白にしますそして 50 でフェードアウトします 1 ファイル 新規作成 横 縦 (100) キャンバスの色 ( 黒 ) OK 2 表示 背景色 白 3 加工 フェードアウト フェードアウト画面が表示

Microsoft PowerPoint - lec10.ppt

PowerPoint プレゼンテーション

情報量と符号化

「統 計 数 学 3」

暮らしのパソコンいろは 早稲田公民館 ICT サポートボランティア

Microsoft PowerPoint - 11.pptx

ex04_2012.ppt

PowerPoint プレゼンテーション

gnuplot の使い方 gnuplot は汎用的で しかも手軽に使えるプロッティング プログラムです 計算結果をグラフにするとき に非常に便利なので ぜひ覚えてください 1 gnuplot の始め方 終わり方 gnuplot の始め方は ターミナル上のプロンプトの後ろで gnuplot と打つだけ

プログラミング基礎

Microsoft PowerPoint - C言語の復習(配布用).ppt [互換モード]

ゲームエンジンの構成要素

pp2018-pp9base

目次

Java言語 第1回

Microsoft PowerPoint - OOP.pptx

スライド 1

02: 変数と標準入出力

PowerPoint Presentation

Microsoft PowerPoint - 計算機言語 第7回.ppt

ガイダンス

初めてのプログラミング

Transcription:

4 回目グラフ作成ライブラリ 1 次元プロット関数関連 Clf, Set_figure, Aspect_ratio Plot1d, Plot1d_int, Plotxy Axis_xcap, Axis_ycap, Grid_on, Legend Text_draw

グラフィックウインドウの設定 グラフィックウインドウ フィギュアウインドウ グラフィックウインドウは図が描画されるウインドウ サイズはdef.h 内 定数 MAINWIN_W と MAINWIN_H を変更すればよい最終行付近のsGW 構造体を変更してもよい Set_figure() 関数により 複数のフィギュアウインドウを配置可能である 各フィギュアウインドウの左 右 上 下マージンはdef.h 190 行目付近 MERGIN_L, MERGIN_R, MERGIN_T, MERGIN_Bで変更できる 特にy 軸の数値ラベル幅が広いときなど 適宜 MERGIN_Lを大きくする必要がある Plot_1d(), Plot_2d() 関数等でグラフを作成することができる

フィギュアウインドウの生成 フィギュアウインドウグラフィックウインドウ内にあるグラフ作成用の仮想ウインドウで一つのフィギュアウインドウにはある軸の値を持ったグラフを描くことができる Plot 関数等は指定したフィギュアウインドウに表示される void Set_figure(int i1,int i2,int n) グラフィックウインドウをi1( 縦の枠数 ),i2( 横の枠数 ) で構成されるマトリクス内のn 番目の位置にフィギュアウインドウを作成する i1,i2を変更するときは Clf(2) で全消去する i1 i2 1 2 3 4 5 6 例 Set_figure(2,3,5); Set_figure( ) により図の位置に固有にのフィギュアIDが割り当てられる カレントのフィギュアウインドウ番号はglobal 変数のiID_Cfwが保持 初めて指定したときはフィギュアウインドウの最大最小値がクリア いったん設定すれば 最大値最小値の値は記憶 二回目以降に指定したときは 前に指定したフィギュアウインドウの軸設定値を使用 一度指定したフィギュアウインドウに違う軸を持つ図を描画する場合はClf(1) で一旦 図や軸の情報を消去して 再指定する必要

フィギュアウインドウの設定 void Aspect_ratio(double ax, double ay) 例 ) Aspect_ratio(1,1); フィギュアウインドウのサイズを ( 幅 : 高さ )=(ax : ay) で表される比率に変更プロット関数より前に指定する必要標準ではグラフィックウインドウのサイズはSet_figure 関数で決まるウインドウ個数に従って均等に割り振り この関数より 標準サイズの縦横サイズを超えない範囲で指定した比率にサイズを定める void Clf(int clflug) フィギュアウインドウの消去を行う 例 ) Clf(1); clflug 1 現在のフィギュアウインドウの枠だけ描画 ( 消去はしない ) 0 現在のフィギュアウインドウの枠を描画し 枠内を消去 軸情報は残される 1 現在のフィギュアウインドウを軸のラベルも含めて消去 最大最小の軸情報もクリア 2 グラフィックウインドウ全体を消去 全てのフィギュアウインドウの最大最小の軸情報もクリア

プロット関数 (1) Clf(1) もしくは Clf(2) 関数で図のクリアをしなければ 同じウインドウに複数 (<20) のグラフを描画可 void Plot1d(double *yn,int n) 例 ) Plot1d(x,100); 指定されているフィギュアウインドウに double 型配列 yn[] のグラフを描画 yn[ ]: double 型の配列変数名 (c 言語内で配列変数名 yn は &yn[0] と同じ ) (100 番目の要素から表示する場合 &yn[99] とする ) n : 表示するデータの個数 Axis_ycap( ) で軸の最大最小が指定されていないときは 自動的に配列内の最大値 最小値を探し y 軸を設定 数値ラベルの描画 色 線の種類は Plot_pen() で指定 表示したいデータの個数が定義された要素数を超えると 無意味なデータが表示されるため注意が必要 n が定義した配列要素数よりも小さければ問題ない

プロット関数 (2) void Plot1d_int(int *yn, int n) 例 ) Plot1d_int(x,100); 現在 Set_figure( ) で指定されているフィギュアウインドウに整数型配列 yn[ ] のグラフを描画 yn[ ]: 整数型の変数名 ( 100 番目の要素から表示 &yn[99] 等 ) n : 表示するデータの個数 Axis_ycap( ) で軸の最大最小が指定されていないときは 自動的に配列内の最大値最小値を探し Y 軸を設定 描画 色 線の種類は Plot_pen( ) で指定 表示したい配列の要素数が定義された要素数を超えると 無意味なデータが表示されるため注意が必要 n が定義よりも小さければ問題ない Clf(1) もしくは Clf(2) 関数で図のクリアをしなければ 同じウインドウに複数 (<20) のグラフを描画可

プロット関数 (3) void Plotxy(double *xn, double *yn,int n) 例 ) Plotxy(x,y,100); 指定されているフィギュアウインドウに double 型配列 xn[ ] を x 軸 double 型配列 yn[ ] を y 軸に対応させたグラフを描画 対数グラフ等に利用 xn[ ], yn[ ] :double 型の配列変数名 ( 100 番目の要素から表示 &xn[99], &yn[99] 等 ) n : 表示するデータの個数 Axis_ycap( ), Axis_xcap( ) で軸の最大最小が指定されていないときは 自動的に配列内の最大値最小値を探し y 軸を設定 描画 色 線の種類は Plot_pen() で指定 表示したい配列の要素数が定義された要素数を超えると 無意味なデータが表示されるため注意が必要, n が定義よりも小さければ問題ない Clf(1) もしくは Clf(2) 関数で図のクリアをしなければ 同じウインドウに複数 (<20) のグラフを描画可

グラフィックウインドウの描画色指定 void Plot_pen(int pf, int pw, int pc) グラフィックウインドウに描画する色, 線種を指定 例 ) Plot_pen(0,0,1); 図形描画だけでなく グラフのプロット関数の線色 線種指定にも使う pf : 0 実線 1 破線 2 点線 3 1 点鎖線 4 2 点鎖線 5 描画しない pw: ペンの太さ ピクセル単位で指定 0は1ピクセル pc: 0 黒 1 赤 2 緑 3 青 4 黄色 5 マゼンダ ( 水色 ) 6 シアン ( ピンク ) 7 白 pc に 8 以上を指定していれば Plot() 関数等のグラフ描画関数を呼び出す毎に自動的に色を 0~6 まで巡回させる 色を指定するときは LINE 関数 RECT 関数等より前にこの関数で指定する 1 回指定すれば その色 線種の状態は保持される

フィギュアウインドウの縦軸設定 void Axis_ycap(double min, double max, char *label) 例 ) Axis_ycap( 1,1, Time [s]"); y 軸の表示範囲 ( 最小 最大値 ) の設定 数値ラベル キャプションを表示 min : y 軸の最小値 max : y 軸の最大値 label : y 軸キャプションの文字列 (100 文字以内 ) 及び文字変数の先頭アドレス プロット関数実行時にy 軸数値ラベルはデータの最大最小値から自動的に生成 Y 軸描画範囲があらかじめ決まっているときはプロット関数より先にAxis_ycap 関数で 範囲を指定すると 表示範囲を任意に設定可 数値ラベルの間隔は min から max の間の適当な数値を自動的に計算して描画

フィギュアウインドウの横軸設定 void Axis_xcap(double min, double max, char *label) 例 ) Axis_xcap( 5,5,"x"); x 軸の最小 最大値の設定 数値ラベル キャプションを表示 min : x 軸の最小値 max : x 軸の最大値 label : x 軸キャプションの文字列 (100 文字以内 ) 及び文字変数の先頭アドレス Axis_xcap 関数では 数値ラベルやキャプションを描画するのみ x 軸の数値ラベルはPlot1d 関数等で自動生成されないため Axis_xcap 関数でx 軸の数値ラベルを必ず指定する必要 数値ラベルの間隔は min から max の間の適当な数値を自動的に計算して描画 x 軸描画範囲は min,max を変更しても 表示範囲は変更されないことに注意 すなわち Plot1d 関数等で表示する x 軸データの 1 番目と最後のデータに対応した数値ラベルを自分で考えて設定する必要 未定のときは min=max=0 を指定すれば キャプションのみを描画

グラフ装飾関数 (1) void Grid_on(int grflug) 図にグリッド線を描画数値ラベルの値のある座標に直線を引く軸の最大最小を決めた (Plot() 関数 Axis_ycap(), Axis_xcap()) 後に指定 0 : y 軸の0レベルのみを引く 1 : y 軸のみグリッドライン描画 grflug 2 : x 軸のみグリッドライン描画 3 : x 軸 y 軸両方にグリッドライン描画 void Legend(char* text, int posflug) 例 ) Grid_on(3); 例 ) Legend( a b c,4); Plot() 関数で重ね書きされたグラフの数だけ凡例を表示凡例 textは line1 line2 line3 のように表記する 線の名前の区切り文字は 0 : 枠外右下に表示 1 : 枠内左上に表示 posflug 2 : 枠内右上に表示 3 : 枠内左下に表示 4 : 枠内右下に表示

グラフ装飾関数 (2) void Text_draw(double x, double y, char* text); textで指定された文字を表示する 表示位置の座標 (x,y) はフィギュアウインドウの各軸の座標が基準グラフのタイトル 凡例に表記できない情報等の記述に使用できる フォントの変更 例 ) Text_draw(10,200, sin ); (def.h 内に定義された global 変数を変更する これらの変数は main 関数内で変更しても以後のフィギュアウインドウの表示に反映される ) フォントの指定 TCHAR 型文字列 Used_Font 例 lstrcpy(used_font,text( MS GOTHIC )); ゴシック体に 使用可能フォント TIMES, MS GOTHIC, MS PGOTHIC, MS MINCHO, MS PMINCHO, TAHOMA, SYLFAEN, CENTURY, RAGE ITALIC, SCRIPT MT BOLD フォントサイズの指定 LONG 型変数 Used_Font_Size イタリック BYTE 型変数 Italic_Font_Flug を 1 にする 0 で普通体

例題 Sinc 関数 sin / を 5 5 の範囲で表示せよ X 軸 y 軸のラベルも表示すること 加えて赤色, 点線で 1/ を重ね書きし 関数名を凡例で示せ

#define N 100 定数の設定 void main (int Number){ int i; double pi=3.1415926535; double x[n],y[n]; 例題のプログラム 注意フォントを大きくした方が見やすいが 大きくすると図の左マージンが取れないので def.h の mergin_l を大きくする for(i=0;i<n;i++){ x[i]=10.0/n*i 5.0; 配列変数 xに 中心 0, 幅 10, ポイント数 N の数値データを設定 y[i]=sin(pi*x[i])/(pi*x[i]); y 軸のSINC 関数をsin 関数使って計算 } y[n/2]=1; (math.hは既にインクルードされている) 注意 sin / は計算機内では 0 で Inf. なので 0 のとき 1 とする Set_figure(1,1,1); Used_Font_Size=45; フィギュアウインドウが1 個であってもSet_figure(1,1,1) で必ず設定図のフォントサイズ変更 Axis_xcap( 5,5,"x"); x 軸の範囲 ラベルを設定 Axis_ycap( 1.2,1.2,"y"); y 軸の範囲 ラベルを設定 Plot1d(y,N); 配列変数 y の数値データを先頭からN 個分波形として表示 } for(i=0;i<n;i++){ y[i]=1.0/(pi*x[i]); 配列変数 y に 1/x の値を代入 } Plot_pen(1,1,1); 図の線を 赤 点線 サイズ1に設定 Plot1d(y,N); 配列変数 y の数値データを先頭からN 個分波形として重ね書き表示 Grid_on(3); グリッド線を入れる Legend("y=sin(πx)/πx y=1/πx",4); 凡例表示

演習 4 4-1. 2 2 のフィギュアウインドウを作成し 4 番目に sin / を 1 4 の範囲で横軸を 縦軸を として表示せよ 4-2. さらに 1 番目に cos / を 1 4 の範囲で縦軸を 横軸を として表示せよ 4-3. さらに 3 番に縦軸を 横軸を の関数としてグリッド線とともに表示せよ ただし アスペクト比を 1:1 とする