このページは機械翻訳を使用して翻訳されました。最新版の英語を参照するには、ここをクリックします。
ヒストグラムを使用してデータの変動を理解する
この例では、既存のThingSpeak™チャネルからデータを読み取り、ヒストグラム プロットを生成する方法を示します。ヒストグラムには、選択したデータの特定の各温度が記録された回数が表示されます。この例では、開始点として、 ThingSpeakのMATLAB AnalysisアプリとMATLAB Visualizationsアプリが提供するコード テンプレートの 1 つを使用します。
ThingSpeak channel 12397 には、マサチューセッツ州ネイティックのMathWorks®キャンパスの駐車場の上にある気象観測所からの気象データが含まれています。Field 4 には、温度の測定値が含まれています。
«テンプレートからMATLABビジュアライゼーションを作成する»
ThingSpeakチャネルからの一連のデータのヒストグラム視覚化を作成するには、コード テンプレートを使用してMATLABスクリプトを作成できます。
[アプリ] タブに移動し、[MATLAB Visualizations] を選択します。「新規」をクリックし、「ヒストグラムを使用してデータの変化を理解する」を選択し、「作成」をクリックします。
«データを視覚化する»
ThingSpeak は、温度ヒストグラムを生成するコードを「MATLABコード」「」フィールドに入力します。
1) ThingSpeakと通信するための変数を指定します。気象観測所チャネルは公開されているため、読み取り API キーは不要です。独自のチャネルから読み取る場合は、これらの値を変更できます。
readChannelID = 12397;
TemperatureFieldID = 4;
readAPIKey = '';
2) thingSpeakRead
を使用して、1200 分の温度データを取得します。
tempF = thingSpeakRead(readChannelID,'Fields',TemperatureFieldID,... 'NumMinutes',20*60,'ReadKey',readAPIKey);
3) histogram
を使用してプロットを生成します。X 軸と Y 軸のラベルとグラフのタイトルを設定します。
histogram(tempF); xlabel('Temperature (F)'); ylabel('Number of Measurements for Each Temperature'); title('Histogram of Temperature Variation');
4) アプリケーションに合わせてテンプレート コードを編集できます。たとえば、コードを編集して、読む分数とプロットのタイトルを変更します。«保存して実行»«»を押してプロットを生成します。
ヒストグラムはリアルタイム データから生成されるため、ヒストグラムはこのプロットと同一には見えません。
5) オプションで、保存されたビジュアライゼーションをチャネルに追加できます。「表示設定」で、「このビジュアライゼーションをチャネルに追加/編集」の横にあるプラス記号を使用して、チャネルリストを展開します。
ビジュアライゼーションを追加するチャネルに対応するチェック ボックスをオンにします。プライベート ビジュアライゼーションを追加するには、«プライベート ビュー» をチェックします。URL を共有し、ビジュアライゼーションを「パブリック ビュー」に追加するには、「パブリック URL の作成」をクリックします。選択内容を更新するには、「表示設定を保存」をクリックします。
«2 つのヒストグラムを比較»
Histogram
と、さまざまな条件の分布を比較することもできます。現在の変動を以前の日の変動と比較することができます。次のコードはテンプレートには含まれていません。複数の分布をプロットするには、このコードをテンプレートに追加します。
1) 前日から追加のデータを読み取り、元のデータセットと比較します。
tempFYesterday = thingSpeakRead(readChannelID,'Fields',TemperatureFieldID,... 'DateRange',[datetime('today')-days(2),datetime('today')-days(1)],'ReadKey',readAPIKey);
2) hold on
を回して、データを同じプロット上に維持します。データを区別するには、histogram
を使用し、 'FaceColor'to
を赤に設定します。凡例も追加します。
% Plot the original Data histogram(tempF) xlabel('Temperature (F)'); ylabel('Number of Measurements for Each Temperature'); title('Histogram of Temperature Variation'); hold on histogram(tempFYesterday,'FaceColor','r'); legend('Today','Yesterday');
3) «保存して実行»« »を押して二重プロットを生成します。
出力の可視化は、2 つの期間のばらつきに違いがあることを示しています。
参考
関数
Histogram
(MATLAB) |thingSpeakRead
関連する例
詳細
- MATLABビジュアライゼーション アプリ
- 複数列のヒストグラム (MATLAB)