FAMOS

カーブウィンドウに関するFAQ

QShowコマンドで表示したカーブウィンドウをCw系関数で操作したい。

A

CwSelectMode("variable")関数でカーブウィンドウに表示した変数によってカーブウィンドウを識別できるようになります。


例)
DataABC = Sin(Ramp(0, 0.001, 1000)*PI2*9)*Sin(Ramp(0, 0.001, 1000)*PI2*0.5) ; サンプルデータ
Show DataABC ; Showコマンドで表示

CwSelectMode("variable") ; 表示した変数でカーブウィンドウを識別するモードに変更
CwSelectWindow(DataABC) ; 表示した変数でカーブウィンドウを識別
CwPosition(0,0,640,480) ; カーブウィンドウの表示位置と大きさを変更

製品詳細はこちら

回答を閉じる

Qグループ変数をCw関数で表示する。

A

グループ変数はCwNewChannel()関数の引数として使用できません。ループ文でグループ変数の要素毎にカーブウィンドウへ追加してください。


例)
GrData = GrNew() ; サンプルデータ
GrData:Ch1 = Ramp(0, 0.1, 100)
GrData:Ch2 = Ramp(0, 0.1, 100)*2
GrData:Ch3 = Ramp(0, 0.1, 100)*5
GrData:Ch4 = Ramp(0, 0.1, 100)*10

CwNewWindow("Cv1", "show")
CwSelectWindow("Cv1")
CwAction("reset")
CwPosition(0,0,640,480)
_nnn = GrChanNum?(GrData) ; グループ変数の要素数
for _iii = 1 to _nnn step 1
CwNewChannel("append last axis", GrData:[_iii]) ; 要素ごとにカーブウィンドウに追加
end

製品詳細はこちら

回答を閉じる

Q波形の位相をカーブウィンドウで表示したい。

A

変数リストの上で右クリックし、コンテキストメニューから[表示オプション]>[コンポーネント表示]を選択してください。

下図のように 変数名.P が表示されますのでこれをカーブウィンドウで表示してください。なお 変数名.M は振幅になります。

表示例

製品詳細はこちら

回答を閉じる

QX軸の時間表示を分:秒にしたい。

A

Ver 7.2以降から下記の操作で表示形式の変更が可能です。
[設定]>[軸]の[スケール]タブで[スケール]を[日/時/分 相対時間]に変更後、[書式設定]で[固定1行]を選択して、[フォーマット行1]に<mm:ss>と入力してください。分が1桁の時に10分の位に0を表示しない場合は<m:ss>と入力してください。

(設定例)

設定例

(表示例)

表示例

製品詳細はこちら

回答を閉じる

Qカーブウィンドウの3次元グラフ表示の軸は右手系か左手系か?

A

左手系です。高さ方向がY軸、奥行き方向がZ軸です。

製品詳細はこちら

回答を閉じる

Qカーブウィンドウの3次元グラフ表示を右手系で表示したい。

A

FAMOS 7.1以降が必要です。

[設定]>[軸]>[z1]>[配置]の[方向]を[反転]にすることにより右手系で表示できます。シーケンスではCwAxisSet("direction", 1)関数を使用して下さい。

製品詳細はこちら

回答を閉じる

Q波形の一部を切り取りたい(FAMOSコマンドによる方法)

A

FAMOSコマンドで波形を切り取るコマンドがあります。切り取るデータに対して、切り取る時間(下の例では、0.002~0.005s)を指定します。

Data = Cut( sintest3, 0.002, 0.005)

切り取る時間を指定するのでなく、インデックス番号で指定することもできます。

Data = CutIndex( sintest3, 100, 250 )

製品詳細はこちら

回答を閉じる

Qスペクトラムキットで計算したFFT結果(横軸:周波数、縦軸:振幅値、奥行軸:時間)を横軸時間、縦軸:振幅値、奥行軸:周波数でウォーターフォール表示したい。

A

MatrixTranspose()関数で計算処理後、カーブウィンドウでウォーターフォール表示して下さい。カラーマップ表示も同様です。

製品詳細はこちら

回答を閉じる

Qカラーマップ上に波形や点を描画したい。

A

[設定]>[線]の[エクストラ]タブでカラーマップ上に描画したい波形の[効果]を[オーバーラップ]にして下さい。

シーケンスでのサンプルを下記に示します。

例)
LOAD sintest1
ColorMap = sintest1
SetSeglen(ColorMap, 40)
_x = Leng(0, 3)
_y = _x
_x[1] = 0.0001 ; プロットしたい点のX座標
_x[2] = 0.0006
_x[3] = 0.0002
_y[1] = 1 ; プロットしたい点のY座標
_y[2] = 8.2
_y[3] = 4
plot = XYof(_x, _y) ; 点をプロットしたい座標をもつXY波形

CwNewWindow("Cv1", "show") ; カーブウィンドウで表示
CwSelectWindow("Cv1")
CwAction("reset")
CwPosition(0,0,640,480)
CwNewChannel("append last axis", ColorMap)
CwDisplaySet("displaymode", 4)
CwNewChannel("append last axis", plot)
CwLineSet("effect", 1)
CwLineSet("type", 0)
CwLineSet("symbol", 8)

製品詳細はこちら

回答を閉じる

QX軸を右から左へ増加させて表示したい。

A

2DカーブウィンドウではX軸を右から左へ増加するようには表示できませんが、3D表示に投影することにより擬似的に表示することができます。

例)
Load slope
_std = slope ; 表示する波形
x = Ramp( XOff?(_std), XDel?(_std), Leng?(_std) ) ; XY波形の場合はX成分を代入する
y = _std ; XY波形の場合はY成分を代入する
z = Leng(0, Leng?(_std)) ; Z=0の線上へ投影
SetUnit(x, Unit?(_std, 0), 1)
CwNewWindow("Cv1", "show") ; カーブウィンドウで表示
CwSelectWindow("Cv1")
CwAction("reset")
CwPosition(0, 0, 640, 480)
CwDisplaySet("displaymode", 8) ; 表示形式=3D
CwNewChannel_xyz("append last axis", x, y, z, "xyz")
CwDisplaySet("3D.angle1", 0)
CwDisplaySet("3D.angle2", 0)
CwSelectByIndex("y-axis", 1) ; Y軸を選択
CwAxisSet("description.option", 3) ; 単位を表示
CwSelectByIndex("x-axis", 1) ; X軸を選択
CwAxisSet("description.option", 3) ; 単位を表示
CwAxisSet("direction", 1) ; 軸を逆向きに表示

製品詳細はこちら

回答を閉じる

Qバーメーター表示時にバーの中心をX座標に合わせたい。

A

[設定]>[線]>[エクストラ]の[タイムシフト]に -0.5*サンプリング時間 となる数値を設定して下さい。

シーケンスでのサンプルを下記に示します。

例)
Line = ramp( 0, 0.1, 10 )^2
Bar = Line

CwNewWindow("Cv1", "show")
CwSelectWindow("Cv1")
CwAction("reset")
CwPosition(0,0,640,480)

CwNewChannel("append last axis", Line)
CwLineSet("symbol", 8)

CwNewChannel("append last axis", Bar)
CwLineSet("shift.x", -XDel?(Bar)/2) ; バーグラフの中心がビン値にくるように調整
CwLineSet("type", 5)

製品詳細はこちら

回答を閉じる

Qズームの取り消し

FAQ ID:c037

A

ズームを実施したカーブウインドウに対してカーブウインドウのメニューバーよりX軸やY軸のスケールの設定を変更してOKボタンを押した最後の設定を呼び出します。

具体例をあげます。

  • データを表示します。
    このときX軸がMin:0、Max:100s、Y軸がMin:-50V、Max50Vのスケールリングで表示したとします。  
  • カーブウインドウのメニューより[Y]-[レンジ]-[固定レンジ]を選択してMin:-30V、Max:30Vと変更してOKボタンを押して確定します。  
  • ズーム機能を使用しX軸、Y軸の変更をおこないます。  
  • ここで「ズームの取り消し」機能を使用すると下記のスケールになります。
    X軸がMin:0、Max:100s、Y軸がMin:-30V、Max:30V (②で保存された設定が呼び出されます。)
  • 注意:1度カーブウインドウを閉じると保存されたグラフ設定は使用できません。

製品詳細はこちら

回答を閉じる

Qデータ間隔を示すために矢印を表示させたい

FAQ ID:c036

A

標準の機能として矢印を表示する機能はありません。
但し、いくつかの機能を組み合わせて機能を実現することは可能です。
 マーカーを利用する方法2つのマーカーを組み合わせます。

以下に作成方法を示します。

STEP1マーカーを配置します。

STEP2マーカーの属性を以下のように変更します。

この設定の結果以下のようになります。

STEP3 STEP2と同様に反対向きの矢印を作成します。

STEP4マーカーの長さを0にすると、ラベルをつけることも可能です。

製品詳細はこちら

回答を閉じる

Qシーケンスを使ってカーブウィンドウを4段のスタック表示にして、各座標にデータを表示させたい。

FAQ ID:c035

Q

データ量が多いのでシーケンスを使って同じX軸のデータを4段*2CH表示したいのですがうまく出来ません。

A

テンプレートを作成して、ダミーチャンネルと置換します。
具体的には以下に従ってください。

STEP1:準備

最初に以下のようにダミーデータを作成してください。
例では各グラフに2個のダミーデータを配置します。

    ;- 最上段のダミーデータ
  dummy11 = Leng(0,0)
    dummy12 = dummy11
    ;- 2段目のダミーデータ
    dummy21 = dummy11
    dummy22 = dummy11
    ;- 3段目のダミーデータ
    dummy31 = dummy11
    dummy32 = dummy11
    ;- 4段目のダミーデータ
    dummy41 = dummy11
    dummy42 = dummy11

ウィンドウ設定でカーブウィンドウの構造を以下のように設定してください。

この後、データdummyは必要ありません。
削除してください。
 Delete dummy*

設定したカーブウィンドウの書式を保存します。
操作方法はカーブウィンドウのメニュー”<>/名前を付けて保存”を選択して、適当な名前を付けてください。
ここでは例として"Default.CCV"とします。

この後、データdummyXXは必要ありません。
削除してください。

STEP2:準備2

ここでは表示させたいデータを作成します。

;------------------------------------
;サンプルデータの作成
;------------------------------------
    data1 = Ramp(0,1,10)
    data2 = data1+1
    data3 = data1+2
    data4 = data1+3
    data5 = data1+4
    data6 = data1+5
    data7 = data1+6
    data8 = data1+7

STEP3:作成

ここでは表示させたいデータを作成します。

    dummy11 = Leng(0,0)
    _Err = CvConfig(dummy11, "default.ccv")
    _i=1
    While _i<=4
        _tempNew = "data"  + TForm( 2*(_i-1)+1, "F00")
        _tempOld = "dummy" + TForm( _i*10+1,    "F00")
        CvReplaceChannel( dummy11, <_tempNew>, _tempOld)
        _tempNew = "data"  + TForm( 2*(_i-1)+2, "F00")
        _tempOld = "dummy" + TForm( _i*10+2,    "F00")
        CvReplaceChannel( dummy11, <_tempNew>, _tempOld)
        _i=_i+1
    End
    

製品詳細はこちら

回答を閉じる

Qアンズーム

FAQ ID:c033

A

アンズームとは前回の操作を取り消すという意味があります。

例えば、ズームしてからマーカーを設定して、その後アンズームすると設定したアンズームは消えてしまいます。

製品詳細はこちら

回答を閉じる

Qトリパタイト・グラフを作成できますか?

FAQ ID:c032

A

この機能は標準ではカーブウィンドウにはありません。
しかし、波形として定義することで以下のようにトリパタイトグラフを作成できます。

Example

;ダミー
Line = XYof( Leng(0,0), Leng(0,0))
Line = EventNew(Line, 0)

_LineX = Leng(0,2)
_LineY = Leng(0,2)

_XStart = -2
_XDelta = 4

_YStart = -2
_YDelta = 6


_X=0
While _X <= (_XDelta+_YDelta)
  _i=1
  While _i<=9
    _LineX[1]=_i*10^(_X+_XStart+_YDelta)
    _LineX[2]=_i*10^(_X+_XStart)

    _LineY[1]=10^(_YStart+_YDelta)
    _LineY[2]=10^(_YStart)

    _AddLine = XYof(_LineX, _LineY)
    EventAppend(Line,_AddLine,0)

    _LineY[1]=10^(_YStart)
    _LineY[2]=10^(_YStart+_YDelta)

    _AddLine = XYof(_LineX, _LineY)
    EventAppend(Line,_AddLine,0)

    _i=_i+1
  End
  _X=_X+1
End

Example2

一度、トリパタイト線図を作成すれば、以下のような簡単なサンプルで表示できます。

こちらのサンプルファイルを展開して"A:\"に格納し、Hammer.SEQを実行させてください。

;トリパタイト線図の読み込み
FAMOS
Load A:\Line.dat

;データの読み込み
_fh = FileOpenFAS("A:\HAMMER.AE2", "A:\OROS.FAS", 0)
DATA = FileObjRead( _fh, 1)
err = fileclose(_fh)

;結果の表示
_err = CvConfig(Line,"A:\HAMMER.CCV")

製品詳細はこちら

回答を閉じる

QXY(もしくは欠損値を持つ)波形をカラーマップ表示した場合の色の変化について

FAQ ID:c029

A

例えば、以下のようなデータをカラーマップに表示した場合、欠損データ部分はどのように表示されるのか確認します。

  X=1 X=2 X=3 X=4
Y=3 30   30 10
Y=2 50 50   10
Y=1 20   0 10

表示方法

上のようなデータをカラーマップで表示するためには各YについてXY波形を作成します。
具体的には

  • WAVE1 = { 20,   0, 10}
  • WAVE2 = { 50, 50, 10}
  • WAVE3 = { 30, 30, 10}

という3つのXY波形を作成します。

さらにこれらのZ方向のオフセット値を設定することにより、マッピングできます。
具体的なコードは下記シーケンスを参照してください

以下に表示結果を示します。

結果

この結果より、欠損値に対するデータの補間はX軸方向のみに行われます。
従って、以下のようなデータを表示していることと同じです。

  X=1 X=2 X=3 X=4
Y=3 30 30 30 10
Y=2 50 50 30 10
Y=1 20 10 0 10

シーケンス

参考に今回のデータは以下のシーケンスで作成しました。
生成されたWave1~3を1つのカーブウィンドウで表示させ、カラーマップに設定してください。

XPOS   = Leng(0,4)
XPOS[1] = 1
XPOS[2] = 2
XPOS[3] = 3
XPOS[4] = 4
YPOS = Leng(0,3)
YPOS[1] = 20
YPOS[2] = 0
YPOS[3] = 10
XDATA   = Join(XPOS[1],XPOS[3])
XDATA   = Join(XDATA ,XPOS[4])
WAVE1   = XYOf(XDATA, YPOS)
SetZoff(WAVE1,1)
YPOS   = Leng(0,3)
YPOS[1] = 50
YPOS[2] = 50
YPOS[3] = 10
XDATA   = Join(XPOS[1],XPOS[2])
XDATA   = Join(XDATA ,XPOS[4])
WAVE2   = XYOf(XDATA, YPOS)
SetZoff(WAVE2,2)
YPOS   = Leng(0,3)
YPOS[1] = 30
YPOS[2] = 30
YPOS[3] = 10
XDATA   = Join(XPOS[1],XPOS[3])
XDATA   = Join(XDATA ,XPOS[4])
WAVE3   = XYOf(XDATA, YPOS)
SetZoff(WAVE3,3)

製品詳細はこちら

回答を閉じる

Qカーブウィンドウのフォントの大きさを変更するには?

FAQ ID:c040

A

(1)カーブウィンドウメニュー“オプション/事前設定”を選択してください。
(2)以下のダイアログが起動しますので、凡例のフォントサイズ内にある“変更”ボタンを押してください。

(3)フォントダイアログで希望するフォントを選択してください。

製品詳細はこちら

回答を閉じる

Qタイトルや軸ラベルを表示できますか

FAQ ID:c018

A

Ver6.0以降では軸のラベルを指定することが可能です。

以下の方法で線の太さを指定できます。

  • カーブウィンドウメニュー"設定/軸"を指定してください。
    ダイアログが表示されます。  
  • "テキスト"タブに切り替えてください。  
  • オプション詳細で"固定テキスト"を選択し、希望する文字列を記入してください。



回答(Ver5.x以前)

表示できません。
但し、X軸単位やY軸単位は自由に設定できますのでこれを代用することができます。

また、レポートジェネレータに貼り付けた後でしたらテキストオブジェクトを貼り付けることで代用できます。

製品詳細はこちら

回答を閉じる

Qカラーマップとクリップボード

FAQ ID:c016

A

カラーマップは大量のメモリーを消費しますので注意してください。カラーマップはビットマップとして表示されます。これがカラーの場合、ピクセルあたり3Byte使用します。例えば、600dpiのプリンターで100mm * 100mmの設定の場合、2000 * 2000 * 3 = 12[MByte]必要になります。

十分な仮想メモリーが必要になることに注意してください。
レポートジェネレータに対してはc:\tmp、もしくは”Options/ Data manager/ memory”で設定されたドライブに十分なスペースが必要です。

“<> / Clipboard”でMS-Wordに貼り付けたら白黒で表示される

メニュー“<>/ Clipboard”を操作したときには、Wordで使用されるプリンターの形式はわかりません。そこで、カーブウィンドウメニュー”<> /Printer setup”で設定されたプリンターを分解能などを計算するベースと仮定します。ここで、プリンターに白黒プリンターが選択されていた場合、カラーマップは白黒になります。

カラーマップでなく波形が表示されている場合はこのプリンター設定を考慮しません。常に色つきのメタファイルとして扱う。

レポートジェネレータに貼り付け時に真黒で表示される

メモリー不足です。カーブウィンドウからレポートジェネレータに波形を転送する場合、レポートジェネレータのプリンター設定を使用します。
レポートジェネレータメニュー“オブジェクト/波形サイズ固定”で指定された大きさがドラッグ&ドロップで使用されます。

注意:クリップボード設定の変更

カーブウィンドウメニュー“オプション/クリップボード設定”で大きさを変更しても、この変更はレポートジェネレータには伝わりません。この大きさはレポートジェネレータの起動時にレジストリーから読み出します。

製品詳細はこちら

回答を閉じる