<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />テーブルがあり、さまざまなグラフを作成していますが、各グラフは異なる方法でデータをフィルター処理する必要があります。 私が経験しているのは、最初のデータ フィルターが変更されず、次のデータ フィルターを上書きするということです。つまり、複数のレポートに対して 1 つのデータ フィルター スクリプトしか使用できません。 新しい各 Dat フィルタの前に「行の状態をクリア」する必要がありますか? ブローの例は2つのデータフィルターで構成されていますが、2番目のデータフィルターはJMPによって無視され、最初のデータフィルターのみが常に有効です。
誰かが彼/彼女の経験/解決策を共有できますか?
ありがとう
dt_master =開ける( 「宿泊予算.jmp」 ) ;
開ける( 「AgencyStayREALDATAfin.jmp」 ) ;
//概要 REALDATA
データ表( 「AgencyStayREALDATAfin.jmp」 ) <<まとめ(
グループ( :ラベル、 :月、 :契約、 :部屋タイプ) 、
平均( :ルームディスカウント% ) 、
和( : NetRoomRevenueWithOutVat ) 、
和( :ルームナイト) 、
和( :アダルトナイト) 、
和( :ブリュットルーム収益) 、
和( :ルームディスカウント) 、
統計列名の形式( "桁" ) 、
元のデータ テーブルへのリンク( 0 )
) ;
//連結する
データ表( 「宿泊予算.jmp」 ) <<連結する(
データ表( "AgencyStayREALDATAfin By (Label, Month, Contract, Room Type).jmp" ) 、
数式を保持、
最初のテーブルに追加
) ;
//データフィルター 1
現在のデータ テーブル() <<データフィルター(
位置( { 324 、 0 } ) 、
モード(選択する( 0 ) 、含む( 1 ) ) 、
フィルターを追加(列( :ラベル) 、どこ( :ラベル== { "バジェット" 、 「2015」 } ) 、画面( :ラベル、サイズ( 102 、 59 ) 、チェックボックス表示) )
) ;
// 月ごとの 2 人部屋の稼働率
グラフビルダー(
サイズ( 1263 、 871 ) 、
コントロールパネルを表示( 0 ) 、
凡例の位置( "右" ) 、
自動ストレッチ( 0 ) 、
タイトルの塗りつぶしの色( "ライトブルー" ) 、
タイトルフレームの色( 「ミディアムダークグレー」 ) 、
レベルの塗りつぶしの色( { 174 、 203 、 228 } ) 、
レベル フレームの色( 「ミディアムダークグレー」 ) 、
レベル下線( 1 ) 、
変数(バツ( :月) 、よ( :ルームナイト) 、よ( :ルームナイト) 、かぶせる( :ラベル) ) 、
要素(
位置( 1 、 1 ) 、
バー(バツ、よ、伝説( 3 ) 、バースタイル( "独身" ) 、要約統計( "和" ) 、ラベル( "価値" ) ) 、
キャプションボックス(バツ、よ、伝説( 6 ) 、要約統計( "和" ) 、 X 位置( "右" ) 、 Y 位置( "上" ) )
) 、
要素(
位置( 1 、 2 ) 、
バー(バツ、よ、伝説( 5 ) 、バースタイル( "独身" ) 、要約統計( 「全体の%」 ) 、ラベル( "価値" ) ) 、
キャプションボックス(バツ、よ、伝説( 7 ) 、要約統計( 「全体の%」 ) 、 X 位置( "右" ) 、 Y 位置( "上" ) )
) 、
SendToReport (
急送( {} 、 「グラフビルダー」 、アウトラインボックス、 {タイトルを設定( 「月別宿泊実績【予算 vs 2015年】」 )} ) 、
急送(
{} 、
"月" 、
スケールボックス、
{分( - 0.5 ) 、マックス( 6.5 ) 、株式会社( 1 ) 、小刻み( 1 ) 、副グリッドを表示( 1 ) 、インサイドティック( 1 ) 、回転ラベル( 「水平」 )}
) 、
急送( {} 、 「ルームナイト」 、スケールボックス、 {主グリッドを表示( 1 ) 、副グリッドを表示( 1 ) 、インサイドティック( 1 )} ) 、
急送(
{} 、
「ルームナイト」 、
スケールボックス( 2 ) 、
{フォーマット( "パーセント" 、桁区切り記号を使用する( 0 ) 、 12 、 2 ) 、マックス( 0.4 ) 、主グリッドを表示( 1 ) 、副グリッドを表示( 1 ) 、インサイドティック( 1 )}
) 、
急送(
{} 、
「400」 、
スケールボックス、
{レジェンドモデル(
3 、
プロパティ( 0 、 {線の色( - 4222675 ) 、塗りつぶしの色( - 4222675 )} ) 、
プロパティ( 1 、 {線の色( - 13647958 ) 、塗りつぶしの色( - 13647958 )} ) 、
プロパティ( 2 、 {線の色( - 2994485 ) 、塗りつぶしの色( - 2994485 )} )
)}
) 、
急送( {} 、 「グラフタイトル」 、テキストエディットボックス、 {テキストを設定( "" )} ) 、
急送( {} 、 「Yタイトル」 、テキストエディットボックス、 {テキストを設定( "" )} ) 、
急送( {} 、 "" 、軸ボックス( 2 ) 、 {軸ラベルを追加( 「月ごとのルームナイト合計」 ) 、軸ラベルを追加( 「アイ・バジンダ・トップラム・ゲセ・コナクラマ」 )} ) 、
急送( {} 、 「グラフビルダー」 、フレームボックス、 {左( 1 ) 、右( 1 ) 、上( 1 ) 、下( 1 )} ) 、
急送( {} 、 「Y1タイトル」 、テキストエディットボックス、 {テキストを設定( 「月ごとの合計 RoomNight の割合」 )} ) 、
急送( {} 、 "" 、軸ボックス( 3 ) 、 {軸ラベルを追加( 「アイ・バジンダ・トップラム・ゲセ・コナクラマ・ユズデセル・ダギリミ」 )} ) 、
急送(
{} 、
「アイ・バジンダ・トップラム・ゲセ・コナクラマ・ユズデセル・ダギリミ」 、
テキストエディットボックス、
{テキストを設定( 「アイ・バジンダ・ゲセ・コナクラマ・ユズデセル・ダギリミ」 )}
)
)
) ;
//データフィルター 2
現在のデータ テーブル() <<データフィルター(
位置( { 437 、 0 } ) 、
モード(選択する( 0 ) 、含む( 1 ) ) 、
フィルターを追加(列( :ラベル) 、どこ( :ラベル== { "バジェット" 、 「2015」 、 「2014」 } ) 、画面( :ラベル、サイズ( 102 、 59 ) 、チェックボックス表示) )
) ;
//マーケット コード別の 2 人部屋のパフォーマンス
グラフビルダー(
サイズ( 1263 、 629 ) 、
コントロールパネルを表示( 0 ) 、
タイトルの塗りつぶしの色( "ライトブルー" ) 、
タイトルフレームの色( 「ミディアムダークグレー」 ) 、
レベルの塗りつぶしの色( { 174 、 203 、 228 } ) 、
レベル フレームの色( 「ミディアムダークグレー」 ) 、
レベル下線( 1 ) 、
変数(バツ( :契約) 、よ( :ダブルオック) 、かぶせる( :ラベル) ) 、
要素(バー(バツ、よ、伝説( 2 ) 、バースタイル( "独身" ) 、要約統計( "平均" ) 、ラベル( "価値" ) ) ) 、
SendToReport (
急送( {} 、 "契約" 、スケールボックス、 {副グリッドを表示( 1 ) 、インサイドティック( 1 )} ) 、
急送(
{} 、
「ダブルオック」 、
スケールボックス、
{分( 1.39439277722467 ) 、マックス( 2.4 ) 、株式会社( 0.2 ) 、小刻み( 1 ) 、主グリッドを表示( 1 ) 、副グリッドを表示( 1 ) 、インサイドティック( 1 )}
)
)
) ;
このコードは、少なくとも 2 つのパネル ボックスを含む nw (PMroz スクリプトの New Window(...)) というレポートがあることを前提としています。
挿入する必要はありません。 PMroz コードを実行してレポートを作成し、記事にある 4 つのコマンドのいずれかを実行して、効果を確認し、学習してください。 気に入ったら、コードに合わせてください。
PMroz の例では、最初の 2 つのコマンドはローカル データフィルターを閉じますが、最後の 2 つのコマンドはそれらを削除します (ローカル フィルター設定は残っているようですが、すべてのシナリオをテストしたわけではありません...)。
新しい[パネルボックス( 1 )][アウトラインボックス( 「ローカルデータフィルター」 )] <<近い( 1 ) ;
新しい[パネルボックス( 2 )][アウトラインボックス( 「ローカルデータフィルター」 )] <<近い( 1 ) ;
新しい[パネルボックス( 1 )][アウトラインボックス( 「ローカルデータフィルター」 )] <<消去;
新しい[パネルボックス( 2 )][アウトラインボックス( 「ローカルデータフィルター」 )] <<消去;
2 つのグラフと 2 つのローカル データ フィルターを使用して Big Class を使用する例を次に示します。
dt =開ける( "$sample_data\Big Class.jmp" ) ;
新しい=新しい窓( 「2つの異なるデータフィルタを使用した例」 、
パネルボックス( "年齢フィルタ" 、
GB1 =グラフビルダー(
コントロールパネルを表示( 0 ) 、
変数(バツ( :重さ) 、よ( :身長) 、かぶせる( :セックス) ) 、
要素(ポイント(バツ、よ、伝説( 1 ) 、ジッター( 1 ) ) ) 、
ローカル データ フィルタ(
位置( { 986 、 266 } ) 、
モード(選択する( 0 ) 、見せる( 1 ) 、含む( 1 ) ) 、
フィルターを追加(列( :年) 、どこ( :年== { 12 、 13 、 14 } ) )
)
) 、
) 、
パネルボックス( 「セックスフィルター」 、
グラフビルダー(
コントロールパネルを表示( 0 ) 、
変数(バツ( :重さ) 、よ( :身長) 、かぶせる( :セックス) ) 、
要素(ポイント(バツ、よ、伝説( 1 ) 、ジッター( 1 ) ) ) 、
ローカル データ フィルタ(
位置( { 93 、 158 } ) 、
モード(選択する( 0 ) 、見せる( 1 ) 、含む( 1 ) ) 、
フィルターを追加(列( :セックス) 、どこ( :セックス== 「M」 ) )
)
) 、
)
) ;