こんにちは、みんな、
何かアイデアや助けをいただければ幸いです。地理的な場所と時間によって変化するデータを扱いたいと考えています。場所の緯度と経度、そして複数の期間における1時間ごとの測定値があります。JMPの行と列でこれらを設定して、時間とともに変化する物件のグラフ(マップ)を作成したり、特定の期間に物件の値が特定の閾値を超えた場所を調査したり、JMPでハイライト表示したりするにはどうすればよいですか?
助けてくれてありがとう
おそらく有用で有益なテンプレートは、JMPサンプルデータディレクトリ内にあります。 これは、ナポレアンの行進のグラフビルダーベースの視覚化です。 データテーブルはNapoleansMarch.jmpなどと呼ばれていると思います。 これは、背景の地理的マップを示し、変数(ナポレオンのさまざまな軍隊のサイズ)がその地理的空間のサイズでどのように変化したかを示しています。 あなたが求めているものに近づくかもしれませんか?
プロットを生成するスクリプトからのHTML出力へのリンクは次のとおりです...見て、それがあなたが求めているもののようなものであるかどうかを確認してください。ナポレアンの3月のHTML出力
ポインタをありがとう。ナポレオンの3月のJMPテーブルも見てきました。そして、ナポレオンの行進の視覚化は、私が作成しようとしているものと似ています。
しかし、私の問題は、約40の場所(40の緯度と経度)しかないのに、50,000を超える測定値(5年以上にわたって1時間ごとに記録)があることです。
そのため、Time_stampを最初の列として設定し、各場所に関連付けられた測定値を追加の列として設定しました。LatとLongを各測定値に関連付ける方法がわかりません。
ナポレオンの3月のJMPテーブルには、列として緯度と経度がありますが、この場合、それは「実用的」ではないと思います。
さらに助けていただければ幸いです。
50,000 * 40 行は大きいですが、JMP にとっては大きすぎるほどではありません。テーブルは、データ列の数に応じて 100 ~ 300 MB の範囲になります。Jim が提案しているように、仮想結合を使用すると、ID 列を追加する代わりに 2 つの列 (必要な他の定数ステーション データがある場合はさらに列) を削除できますが、これは開始時に必要な最適化ではないと思います。
これを見るのはどのような視聴者でしょうか? 動画やコントロール付きのライブ グラフ、あるいは静止画像のどれを好むでしょうか?
@Craige_Halesが述べたように、その行数では問題はなく、JMP のテーブルは非常に効率的に動作しています。
まず、データ構造が簡単であればあるほど良いです。
さらに、JMP では、データを複数のテーブルに分散したり、分割したり、スタックしたりするなど、データの形状を変更するのが非常に簡単です。
データは今どこにありますか?2つのcsvファイルにある場合は、両方のファイルをJMPで開くだけで簡単です。
これらは JMP データ テーブルになり、クエリ ビルダーを使用して結合されます。
また、データが定期的に更新される場合は、クエリ ビルダーを使用して、新しいデータを csv ファイルから直接インポートすることもできます。
こんにちは、
データは比較的整理されており、JMP では 2 つの別々のテーブルになっています。1 つはステーション ID、緯度と経度、もう 1 つは 5 年間にわたって各ステーションで1 時間ごとに測定された特定のプロパティです。クエリ ビルダーを使用したプレビュー結合は正しくないため、1 つのテーブルで地理データを使用し、別のテーブルで時間ベースのプロパティを使用して視覚化を作成する方法について、より具体的なガイダンスが必要です。
ちなみに、私たちは州全体の約 10 件のこのような不動産を調査することに興味があるので、公開ソースからこのような不動産ファイルをさらに抽出しています。
また、ご質問にお答えすると、現時点での視覚化は、データ探索と機能研究プロセスの一部です。視聴者は、特定の半径内など、自分の地域の近くで何が起こっているかを示すアニメーションバブルチャートに最終的に非常に興味を持つようになると考えています。現在、私たちは、意味のあるパターンが存在するかどうかを確認するためにデータを研究しているところです。
try(close(dtLatLon,nosave));
try(close(dtTempTime,nosave));
dtLatLon = New Table( "LatLon",
New Column( "city", Character, "Nominal", Set Values( {"New York", "London"} ) ),
New Column( "lat", Numeric, "Continuous", Format( "Best", 12 ), Set Values( [40.73061, 51.509865] ) ),
New Column( "lon", Numeric, "Continuous", Format( "Best", 12 ), Set Values( [-73.935242, -0.118092] ) )
);
dtLatLon << save( "$temp/LatLon_deleteme.jmp" ); // disk file name is required for virtual join
dtLatLon:city << Set Property( "Link ID", 1 );
dtTempTime = New Table( "TempTime",
New Column( "city", Character, "Nominal",
Set Values( {"New York", "London", "New York", "London", "New York", "London", "New York", "London", "New York", "London"} )
),
New Column( "temp", Numeric, "Continuous", Format( "Best", 12 ), Set Values( [18, 30, 18, 12, 24, 17, 15, 30, 29, 19] ) ),
New Column( "time", Numeric, "Continuous", Format( "yyyy-mm-ddThh:mm", 16 ), Input Format( "yyyy-mm-ddThh:mm" ),
Set Values( [3660682600, 3660683600, 3660684600, 3660685600, 3660686600, 3660687600, 3660688600, 3660689600, 3660690600, 3660691600] )
)
);
dtTempTime << save( "$temp/TempTime_deleteme.jmp" ); // disk file name is required
dtTempTime:city << Set Property( "Link Reference", Reference Table( dtLatLon ) );
dtTempTime << Bubble Plot(
X( Referenced Column( "lon[city]", Reference( Column( :city ), Reference( Column( :lon ) ) ) ) ),
Y( Referenced Column( "lat[city]", Reference( Column( :city ), Reference( Column( :lat ) ) ) ) ),
Sizes( :temp ),
Time( :time ),
ID( :city ),
Time Index( 4.0938 ),
Title Position( -59.21926910299, 46.12 ),
SendToReport(
Dispatch( {}, "1", ScaleBox, {Format( "Best", 12 ), Min( -80 ), Max( 10 ), Inc( 10 ), Minor Ticks( 0 )} ),
Dispatch(
{},
"2",
ScaleBox,
{Scale( "Geodesic" ), Format( "Best", 12 ), Min( 19.0897009966777 ), Max( 72.9102990033223 ), Inc( 2 ), Minor Ticks( 1 )}
),
Dispatch(
{},
"Bubble Plot",
FrameBox,
{Frame Size( 602, 360 ), Background Map( Boundaries( "World" ) ), Grid Line Order( 2 ), Reference Line Order( 3 )}
)
)
);データがすでに存在しているため、よりシンプルになります。テーブルをリンクするには、都市名ではなく数値 ID を使用する場合があります。
Bubble PlotBubble Plotバブルプロット