(58)【調査した分野】(Int.Cl.,DB名)
複数の項目に属する複数個のデータから、前記項目の数と各前記項目のデータ数の積で三次元オブジェクトを副領域に分割させ、各前記項目の各データを、前記三次元オブジェクトを分割した各副領域に割り当てる演算手段、
各前記副領域により各データの値と順序を示す表示手段、
を備えることを特徴とするデータの三次元可視化システム。
【発明を実施するための形態】
【0021】
以降、本発明を実施するための形態を、各図を参照して詳細に説明する。
【0022】
本実施形態は、複数の項目を持つデータを1つの三次元オブジェクトとして表現する手法を提案する。データ可視化装置は、可視化すべきデータから描画に必要な情報を算出し、三次元オブジェクトを項目ごとの領域に分割する。そして、データ可視化装置は、相関係数に応じた項目のソートを行い、項目・データごとに中心地からの半径を算出する。データ可視化装置は更に、領域情報および半径情報から三次元オブジェクトの描画範囲の座標を算出し、ヒストグラムにおける最大度数の階級からの乖離応じた描画色を算出する。これにより、データ可視化装置は、データから三次元オブジェクトを描画することができる。ユーザは、この三次元オブジェクトからトレンド情報、ヒストグラム情報、相関係数を読み取ることができる。
【0023】
図1は、本実施形態におけるデータ可視化装置1の構成図である。このデータ可視化装置1の構成は、第1〜第6の実施形態に共通する。
データ可視化装置1は、CPU(Central Processing Unit)11、ROM(Read Only Memory)12、RAM(Random access memory)13を備えるコンピュータである。データ可視化装置1は更に、表示部14、印刷部15、記憶部16を備える。記憶部16は、例えばハードディスクやフラッシュメモリであり、データ可視化プログラム161、分析データ162を格納している。分析データ162は、
図29に示すデータ80と同様に構成されており、例えば各列が項目#1〜#mであり、各行が時刻T1〜Tnであり、各セルの内容は、該当項目の該当時刻における時系列データである。つまり、m個の項目のそれぞれが、n個の時系列データを有している。
【0024】
CPU11は、各種演算を実行する演算手段であり、ROM12に格納された不図示のBIOS(Basic Input Output System)プログラムを読み出して実行することで、このデータ可視化装置1を起動する。CPU11は更に、記憶部16に格納されたデータ可視化プログラム161をRAM13などに読み出して実行することにより、分析データ162の可視化を行い、更に分析データ162から算出したヒストグラム情報や相関係数の情報が読み取れるようにする。
【0025】
ROM12は、不揮発性メモリであり、BIOSプログラムのように、このデータ可視化装置1に固有のプログラムを実行する。RAM13は、揮発性メモリであり、CPU11によって各種プログラムのワーク領域として用いられる。
【0026】
表示部14は、例えば液晶パネルを備えており、文字や図形や画像などを表示する。
印刷部15は、紙などの記録媒体に、文字や図形や画像などを印刷する。データ可視化装置1は、分析データ162を可視化して、可視化したオブジェクトを表示部14に表示させる。
【0027】
図2は、変形例のデータ可視化システムSの構成図である。
データ可視化システムSは、データ可視化サーバ2と端末3とがネットワークNを介して通信可能に接続されて構成される。データ可視化サーバ2は、CPU21、ROM22、RAM23を備えるコンピュータである。データ可視化サーバ2は更に、表示部24、印刷部25、記憶部26、通信部27を備える。記憶部26は、例えばハードディスクやフラッシュメモリであり、データ可視化プログラム261、分析データ262を格納している。
【0028】
CPU21は、各種演算を実行する演算手段であり、ROM22に格納された不図示のBIOS(Basic Input Output System)プログラムを読み出して実行することで、このデータ可視化サーバ2を起動する。CPU21は更に、記憶部26に格納されたデータ可視化プログラム261をRAM23などに読み出して実行することにより、分析データ262の可視化を行う。分析データ262は、
図29に示す分析データ80と同様に構成されており、例えば各列が項目#1〜#mであり、各行が時刻T1〜Tnである。
【0029】
ROM22は、不揮発性メモリであり、BIOSプログラムのように、このデータ可視化サーバ2に固有のプログラムを実行する。RAM23は、揮発性メモリであり、CPU21によって各種プログラムのワーク領域として用いられる。
【0030】
表示部24は、例えば液晶パネルを備えており、文字や図形や画像などを表示する。
印刷部25は、紙などの記録媒体に、文字や図形や画像などを印刷する。
通信部27は、例えばネットワークインタフェースカードであり、ネットワークNを介して端末3と相互に通信する。データ可視化サーバ2は、分析データ262を可視化して、通信部27を介して端末3と通信し、可視化したオブジェクトを端末3の表示部などに表示させる。なお、端末3も、表示部と通信部とプロセッサを備えたコンピュータである。
【0031】
《第1の実施形態》
第1の実施形態では、データを球状の三次元オブジェクトとして可視化するものである。以下、
図1に示したデータ可視化装置1が各処理を実行するものとして説明するが、
図2に示したデータ可視化サーバ2が各処理を実行して、三次元オブジェクトを端末3上に表示させてもよく、限定されない。
【0032】
図3Aと
図3Bは、第1の実施形態におけるデータの可視化処理のフローチャートである。
CPU11は、分析データ162から描画に必要な情報を算出する(S10)。ここで描画に必要な情報とは、分析データ162の項目数mと、各項目の時系列データ数nである。以下の説明では球体オブジェクト4を地球に擬えて、分割方法を説明している。
CPU11は、球体オブジェクト4の地軸(x軸)周りの180度を項目数mで除算した角度θ
2を算出し、球体オブジェクト4のうち極を中心とする2つの半球を角度θ
2で領域に分割する(S11)。これにより、所定経度範囲の三次元の領域、およびこれの対蹠点の三次元の領域が得られる。第1の実施形態では、これら2つの領域の組合せを単に「領域」と呼ぶ。
以下、
図4と
図5を参照して、ステップS11の動作を説明する。
【0033】
図4は、球体オブジェクト4を領域41にm分割する動作を示す斜視図である。
図4においてx軸は上方であり、y軸は右奥方向であり、z軸は右手前方向である。
図5は、球体オブジェクト4を領域41にm分割する動作を示す断面図である。
図5は、
図4の球体オブジェクト4をX=0で切断したときの断面を示している。
【0034】
分析データ162の項目数はmである。
図4と
図5に示すように、データ可視化装置1のCPU11は、球体オブジェクト4の地軸(x軸)周りの180度を項目数mで除算した角度θ
2で、この球体オブジェクト4のうち極を中心とする半球の一方を所定緯度範囲でm個の領域41aに分割し、半球の他方を所定緯度範囲でm個の領域41bに分割する。この所定緯度範囲は、角度θ
2である。領域41aの対蹠点の集合が、領域41bである。ここでは領域41a,41bの組合せを領域41と呼ぶ。
これにより、球体オブジェクト4を、全ての項目数mに対応したm個の領域41に分割することができる。
【0035】
図3Aに戻り、説明を続ける。CPU11は、各領域の中心から360度を時系列データ数nで除算した角度θ
1を算出し、各領域を角度θ
1で副領域に分割する(S12)。以下、
図6と
図7を参照して、ステップS12の動作を説明する。
【0036】
図6は、領域41をn個の副領域411に分割する動作を示す斜視図である。
図6においてx軸は上方であり、y軸は右奥方向であり、z軸は右手前方向である。
図7は、領域41を、南北方向にn個の副領域411に分割する動作を示す断面図である。
図7は、
図6の領域41と副領域411を、左手前方向から右奧方向に向けて見たときを示している。なおy−z軸とは、
図7の領域41を側面から見たときの軸であり、X軸に対して垂直である。
【0037】
分析データ162の各項目の時系列データ数はnである。データ可視化装置1のCPU11は、各領域の中心から360度を時系列データ数nで除算した角度θ
1で、この領域41を副領域411に分割する。これにより、各領域41を、時系列データ数nに対応したn個の各副領域411に分割することができる。これらステップS11,S12の処理は、球体オブジェクト4を項目数と項目のデータ数の積で、各副領域411に分割する処理である。
【0038】
一般的に時系列データ数nは、項目数mよりも大きい。よって各項目を180度の半円に対応付け、時系列データを360度の全円に対応付けることで、球体オブジェクト4における各時系列データの分解能の低下を抑止することができる。
【0039】
図3Aに戻り説明を続ける。CPU11は、分割した副領域411が可視化可能な一定体積を超えるように、球体の半径rを決定する(S13)。
CPU11は、各項目を、ユーザが予め指定した項目との相関係数が高い順にソートして各領域に対応付ける(S14)。これにより、ユーザが予め指定した項目と各項目の相関を球体オブジェクト4上に示すことができる。
次にCPU11は、各時系列データを時系列順に各副領域に対応付ける(S15)。これにより、各時系列データの順序を、各副領域の表面と中心との角度で示すことができる。
【0040】
なお、相関係数r(x,y)は、2変量間(x,y)の関係を測る指標である。相関係数r(x,y)は、xとyの共分散Cov(x,y)を、xの偏差の自乗Var(x)とyの偏差の自乗Var(y)の積の平方根で除算したものであり、式(1)によって導出される。
【数1】
【0041】
xとyの共分散Cov(x,y)は、第i番目の観測値を(x
i,y
i)で表したとき、x方向の偏差とy方向の偏差の積を全て足して、標本サイズnで除算したものであり、式(2)によって導出される。
【数2】
【0042】
xの分散Var(x)は、x方向の偏差の自乗を全て足して標本サイズnで除算したものであり、式(3)によって導出される。
【数3】
【0043】
yの分散Var(y)は、y方向の偏差の自乗を全て足して標本サイズnで除算したものであり、式(4)によって導出される。
【数4】
【0044】
相関係数r(x,y)は、−1.0から+1.0のうち何れかであり、1.0に近いほど正の相関が強く、−1.0に近いほど負の相関が強く、0に近いときには相関がない。
【0045】
図3Bに戻り説明を続ける。ステップS16〜S24において、CPU11は、項目数だけ処理を繰り返す。
ステップS17〜S23において、CPU11は、各項目ごとの時系列データ数だけ処理を繰り返す。
CPU11は、時系列データが欠損しているか否かを判定する(S18)。CPU11は、時系列データが欠損していないならば(No)、各時系列データの最大値が3r、最小値がrとなるように標準化を行って各データの半径r
dを求め(S19)、ステップS21に進む。ここで半径rは、データの最小値を示す第1所定値に相当する。半径3rは、データの最大値を示す第2所定値に相当する。
【0046】
CPU11は、時系列データが欠損しているならば(Yes)、データの半径r
dに0を設定し(S20)、ステップS21に進む。
ステップS21において、CPU11は、球体情報と半径情報をもとに各副領域411の描画座標を決定する。ステップS21の処理により、CPU11は、各時系列データの値を、球体オブジェクト4の中心から副領域の表面までの距離で示すことができる。
【0047】
図8は、副領域411の半径を示す図である。
分析データ162の最小値に対応する副領域411の最小半径はrである。分析データ162の最大値に対応する副領域411の最大半径は3rである。CPU11は、分析データ162の各時系列データを、半径rから3rの間に線形変換する。この場合、以下の式(5)によって各データの半径r
dが算出される。
【数5】
但し r
d :算出される半径
v :時系列データ
v
min:時系列データの最小値
v
max:時系列データの最大値
r :最小半径
3r:最大半径
【0048】
なお、分析データ162の各時系列データを線形変換する半径の範囲は、rから3rの間に限定されない。例えば、以下の式(6)は、最大半径r
maxから最小半径r
minまでの間に各データを線形変換するものである。
【数6】
但し r
d :算出される半径
v :時系列データ
v
min:時系列データの最小値
v
max:時系列データの最大値
r
min:最小半径
r
max:最大半径
【0049】
更に分析データ162の各時系列データを半径に変換する方法は線形変換に限られず、対数変換などのように非線形に変換されてもよい。
【0050】
図9は、分析データ162のうち或る1つの項目を示したトレンドグラフ42である。
図9のトレンドグラフ42は従来技術であり、第1の実施形態の球体オブジェクト4と対比するために、ここで説明する。
図9のトレンドグラフ42は、10月5日から8日までの期間422aと、15日から18日までの期間422bと、29日から11月1日までの期間422cと、8日から11日までの期間422dにおいて、この項目の時系列データがないことを示している。これらの期間422a〜422dにおいて、分析データ162のこの項目には、時系列データの欠損値が発生している。なお、分析データ162は、一定期間に亘って欠損値が続く場合、その期間を分析から除外するなどの対応をすることが望ましい。
【0051】
外れ値は、統計において他の値から大きく外れた値である。トレンドグラフ42において、10月4日の時系列データ423aと11月12日の時系列データ423dは、他の値と比べて大きい。更に10月9日の時系列データ423bと、11月7日の時系列データ423cは、他の値と比べて小さい。これら時系列データ423a〜423dは、一般的に測定ミスなどのデータであり、分析から除外するなどの対応をする。但し、異常値と実質的に区別できないため、確認が必要となる。
定格変動は、電力などで基準値が変動した場合に発生する。定格変動が発生した場合、変動前と変動後の何れかにそろえる等の作業が必要になる。
【0052】
図10は、球体オブジェクト4の断面図であり、分析データ162のうち或る1つの項目のトレンド情報を表示している。
CPU11は、トレンド情報の特徴が把握できるように半径r
dを算出し、球体オブジェクト4を生成する。各データの範囲(上下限範囲)はデータにより様々であり、全てのデータが一定範囲内に描画されることで球体として認識しやすくなる。データを標準化して、例えば半径r〜3rに線形変換したものを使用する。これは、従来技術におけるトレンドグラフにおける縦軸の自動設定と同様である。
【0053】
CPU11は、時系列データの欠損値を、球体オブジェクト4の半径0の部分として表現している。具体的にいうと、期間412aは、時系列データの欠損値が発生している期間であり、
図9に示す期間422aに対応する。同様に期間412bは
図9に示す期間422bに対応し、期間412cは
図9に示す期間422cに対応し、期間412dは
図9に示す期間422dに対応する。このように、CPU11は、時系列データが存在するときは半径r〜3rの副領域411とし、時系列データが欠落した部分の副領域411は表示していない。これにより、時系列データの存在の有無を明確に示すことができる。更に、半径が所定範囲になるように線形変換しているので、球体として認識しやすくなる。
【0054】
時系列データ413aは、
図9に示した10月4日の時系列データ423aに対応する。時系列データ413bは、
図9に示した10月9日の時系列データ423bに対応する。時系列データ413cは、
図9に示した11月7日の時系列データ423cに対応する。時系列データ413dは、
図9に示した11月12日の時系列データ423dに対応する。
【0055】
図3Bに戻り説明を続ける。CPU11は、ヒストグラムの最大度数の階級を基準とし、そこからの階級の乖離に応じて描画色を決定する(S22)。
【0056】
図11は、分析データ162のヒストグラム43である。
図11のヒストグラム43は従来技術であり、第1の実施形態の球体オブジェクト4と対比するために、ここで説明する。
このヒストグラム43は、分析データ162に含まれる或る項目の各時系列データの存在する範囲をいくつかの区間(階級)に分けた場合,各区間(階級)を底辺とし、その区間(階級)に属するデータの度数を高さとする棒グラフで示される。これによりユーザは、データの分布状況を視覚的に認識することができる。
【0057】
ユーザは、主に下記の観点でヒストグラム43を確認する。第1の観点は、統計において他の値から大きく外れた「外れ値」であり、例えば棒グラフ431,432で示される。棒グラフ431の階級は、
図10に示した時系列データ413b,413cが属している。棒グラフ432の階級には、
図10に示した時系列データ413a,413dが属している。外れ値は、一般的に測定ミスなどで発生し、分析から除外するなどの対応をする。但し、異常値と実質的に区別できないため確認作業が必要となる。
【0058】
第2の観点は、データの偏りである。特定箇所に集中しているものや数箇所に固まっているなどデータの特徴を確認することが必要である。
【0059】
図12は、副領域411にヒストグラム情報を反映させた球体オブジェクト4の断面図である。
図12に示すように、CPU11は、これらヒストグラムの特徴が把握できるように球体オブジェクト4の描画色を設定する。例えばCPU11は、密集地に近い箇所を青とし、密集地から離れるほど赤となるように色を設定する。ユーザは、各副領域411の色や濃淡で、度数の分布状態を判別することができる。
【0060】
ここで描画色CのRGB値は、以下の式(7)のように算出する。具体的にいうと、CPU11は、緑色の画素値P
gを0、青色の画素値P
bを119に固定し、赤色の画素値P
rをヒストグラム情報に基づいて算出する。
【数7】
但し P
r :赤色の画素値
【0061】
この赤色の画素値P
rは、
図11に示したヒストグラム43に基づいて算出される。ヒストグラム43のうち、最も度数が高い階級433を基準階級とする。更にCPU11は、基準階級から下限方向の乖離度である階級数B
n1と、上限方向の乖離度である階級数B
n2とを算出する。ここでは下限方向の階級数B
n1は7、上限方向の階級数B
n2は17である。CPU11は、画素値P
rの最大値255を下限方向の階級数B
n1と上限方向の階級数B
n2のうち大きい方で除算し、更に基準階級からの階級数mで乗算する。これを以下の式(8)に示す。
【数8】
但し B
n1 :基準階級から下限方向の階級数
B
n2 :基準階級から上限方向の階級数
m :基準階級からの階級数
【0062】
式(8)により、基準階級に近い箇所を青く、基準階級から乖離するほど赤みが増すように副領域の描画色を算出することができる。なお、ヒストグラム情報を色情報に変換する方法は、上記の式に限られない。赤色の画素値ではなく緑色や青色の画素値を用いてもよく、更に複数の原色の組合せを用いてもよく、限定されない。
【0063】
図3Bに戻り説明を続ける。ステップS23において、CPU11は、当該項目において未処理のデータがあれば、ステップS17に戻る。CPU11は、当該項目の全データを処理したならば、ステップS24に進む。
ステップS24において、CPU11は、未処理の項目があれば、ステップS16に戻る。CPU11は、全項目を処理したならば、
図3Bの処理を終了する。
【0064】
図13は、球体オブジェクト4の表示画面5を示す図である。
CPU11は、
図1に示した表示部14に、この表示画面5を表示する。表示画面5には、
図3Aと
図3Bの処理で作成された球体オブジェクト4が表示されている。
【0065】
ユーザが球体オブジェクト4にマウスカーソル51を重ねてクリックしたときに、CPU11は、クリックされた副領域411の属性をツールチップ52で表示する。ツールチップ52には、項目名として“X発電所”が表示され、時系列データ名として“平成30年11月9日”が表示されている。このようなツールチップ52を表示することで、ユーザは、クリックされた副領域411の項目名や時系列データ名などの属性を容易に知ることができる。
【0066】
第1の実施形態のデータ可視化装置1は、分析データ162を球体オブジェクト4に変換し、データ分析に必要なトレンド情報とヒストグラム情報と相関係数の情報を、この球体オブジェクト4に表現している。これにより、複数種類かつ多数のグラフを作成することなく、データを理解しやすい態様で可視化することができる。
【0067】
《第2の実施形態》
第2の実施形態は、データを球状の三次元オブジェクトとして可視化する際に、データ数nと項目数mのうち小さい方で球体を領域に分割し、その後、データ数nと項目数mのうち大きい方で各領域を副領域に分割するものである。
【0068】
図14は、第2の実施形態におけるデータの可視化処理のフローチャートである。
CPU11は、分析データ162から描画に必要な情報を算出する(S70)。ここで描画に必要な情報とは、分析データ162の項目数mと、各項目の時系列データ数nである。
【0069】
ステップS71において、CPU11は、分析データ162の項目数mの値よりも、各項目の時系列データ数nの値が小さいか否かを判定する。CPU11は、項目数mの値よりも、時系列データ数nの値が小さいならば(Yes)、球体オブジェクト4を時系列データ数nで領域に分割する(S72)。更にCPU11は、各領域を項目数mで副領域に分割する(S73)。
【0070】
CPU11は、分割した副領域が可視化可能な一定体積を超えるように、球体の半径rを決定する(S74)。
CPU11は、各項目の各時系列データを、時系列順に各領域に対応付ける(S75)。次にCPU11は、各項目を、ユーザが予め指定した項目との相関係数が高い順にソートして、各副領域に対応付ける(S76)。これにより、ユーザが予め指定した項目と各項目の相関を球体オブジェクト4上に示すことができる。
ステップS76の処理の後、CPU11は、南北方向に向いた矢印の凡例を「項目」とし(S92)、東西方向に向いた矢印の凡例を「時系列データ」として(S93)、
図3Bに示すステップS16の処理に進む。
【0071】
また、ステップS71において、CPU11は、時系列データ数nの値よりも項目数mの値が小さいならば(No)、球体オブジェクト4を項目数mで領域に分割する(S77)。更にCPU11は、各領域を時系列データ数nで副領域に分割する(S78)。
CPU11は、分割した副領域が可視化可能な一定体積を超えるように、球体の半径rを決定する(S79)。
CPU11は、各項目を、ユーザが予め指定した項目との相関係数が高い順にソートして、各領域に対応付ける(S80)。
CPU11は、各項目の各時系列データを、時系列順に各副領域に対応付ける(S81)。
ステップS81の処理の後、CPU11は、南北方向に向いた矢印の凡例を「時系列データ」とし(S94)、東西方向に向いた矢印の凡例を「項目」として(S95)、
図3Bに示すステップS16の処理に進む。
【0072】
球体オブジェクト4は、地軸(x軸)周りの180度を第1分割数で除算した第1の角度で領域に分割される。この領域は、球体オブジェクト4のうち極を中心とする半球を、第1の角度で分割した所定経度範囲の三次元の領域、およびその対蹠点の三次元の領域の組合せである。そののち、各領域は、当該領域の中心から360度を第2分割数で除算した第2の角度で副領域に分割される。第2の実施形態においてCPU21は、mとnのうち値が少ない方で、球体オブジェクト4の地軸(x軸)周りの180度を除算した第1の角度で領域分割したのち、mとnのうち値が多い方で、領域の中心から360度を除算した第2の角度で副領域に分割している。これにより、値が多い方の一要素あたりの角度が小さくなりすぎることを抑止できる。以下、
図15と
図16を参照して、ステップS72の動作を説明する。
【0073】
図15は、球体オブジェクト4を領域44にn分割する動作を示す斜視図である。
図15においてx軸は上方であり、y軸は右奥方向であり、z軸は右手前方向である。
図16は、球体オブジェクト4を領域44にn分割する動作を示す断面図である。
図16は、
図15の球体オブジェクト4をX=0で切断したときの断面を示している。
【0074】
分析データ162の時系列データ数は、nである。
図15と
図16に示すように、データ可視化装置1のCPU11は、地軸(x軸)周りの180度を時系列データ数nで除算した角度θ
3で、この球体オブジェクト4のうち極を中心とする半球の一方を所定緯度範囲でn個の領域44aに分割し、半球の他方を所定緯度範囲でn個の領域44bに分割する。領域44aの対蹠点の集合が、領域44bである。ここでは領域44a,44bの組合せを領域44と呼ぶ。
これにより球体オブジェクト4を、時系列データ数nに対応したn個の領域44に分割することができる。
【0075】
以下、
図17と
図18を参照して、ステップS73の動作を説明する。
図17は、領域44をm個の副領域441に分割する動作を示す斜視図である。
図17においてx軸は上方であり、y軸は右奥方向であり、z軸は右手前方向である。
図18は、領域44をm個の副領域441に分割する動作を示す断面図である。
図18は、
図17の領域44と副領域441を、左手前方向から右奧方向に向けて見たときを示している。
分析データ162の項目数はmである。データ可視化装置1のCPU11は、領域の中心から360度を項目数mで除算した角度θ
4で、この領域44をm個の副領域441に分割する。これにより、全ての項目を、各副領域441に対応付けることができる。
【0076】
図19は、球体オブジェクト4の表示画面5を示す図である。
CPU11は、
図1に示した表示部14に、この表示画面5を表示する。表示画面5には、
図14と
図3Bの処理で作成された球体オブジェクト4が表示されている。
この球体オブジェクト4の上下を極としたとき、東西方向に向いた矢印の凡例54が表示されており、「時系列データ」と記載されている。
更に南北方向に向いた矢印の凡例53が表示されており、「項目」と記載されている。これにより、南北方向と東西方向それぞれに、何が表示されているかを示すことができる。
【0077】
《第3の実施形態》
第1の実施形態とは別の分割方法を、第3の実施形態として記述する。データ可視化装置1は、球体オブジェクト4のうち地軸(x軸)周りの360度を、項目数mで除算した第1の角度を算出し、球体オブジェクト4を、その極を中心として第1の角度で分割した所定経度範囲の三次元のm個の領域を算出する。これにより、所定経度範囲の三次元の領域が得られる。次にデータ可視化装置1は、三次元の各領域の中心から180度を各項目の時系列データ数nで除算した第2の角度を算出し、各領域を第2の角度で分割したn個の副領域を算出する。
【0078】
図20は、第3の実施形態における球体の分割方法を示す図である。
ここで球体オブジェクト4は、地軸(x軸)周りの360度において、30個の領域に分割されている。なお、ここで項目数mは30であり、各項目は、AからZとa〜dの名称が付与されている。
更に球体オブジェクト4の各領域は、各領域の中心から180度において、各項目の時系列データ数に対応するn個の副領域に分割されている。このように分割された球体オブジェクト4によっても、分析データ162を理解しやすく可視化することができる。
なお、第1の実施形態と同様に、CPU11は、各時系列データの値を球体オブジェクト4の中心から各副領域の表面までの距離で示し、各時系列データの順序は球体オブジェクト4の中心から各副領域の表面までの角度で示す。
【0079】
《第4の実施形態》
更に別の分割方法を、第4の実施形態として記述する。データ可視化装置1は、球体オブジェクト4のうち地軸(x軸)周りの360度を、時系列データ数nで除算した第1の角度を算出し、球体オブジェクト4である球体を、極を中心として第1の角度で分割した所定経度範囲の三次元のn個の領域を算出する。これにより、所定経度範囲の三次元の領域が得られる。次にデータ可視化装置1は、三次元の各領域の中心から180度を項目数mで除算した第2の角度を算出し、各領域を第2の角度で分割したm個の副領域を算出する。
【0080】
図21は、第4の実施形態における球体の分割方法を示す図である。
ここで球体オブジェクト4は、地軸(x軸)周りの360度において、30個の領域に分割されている。なお、ここで時系列データ数nは30であり、各時系列データは、00から29の名称が付与されている。
更に球体オブジェクト4の各領域は、南北の緯度方向において、各項目の項目数に対応するm個の副領域に分割されている。なお、ここで項目数mは11であり、各項目にはAからKの名称が付与されている。このように分割された球体オブジェクト4によっても、分析データ162を理解しやすく可視化することができる。
また、第1の実施形態と同様に、CPU11は、各時系列データの値を球体オブジェクト4の中心から各副領域の表面までの距離で示し、各時系列データの順序は球体オブジェクト4の地軸(x軸)周りに各副領域の表面までの角度で示す。
【0081】
なお、第3の実施形態と第4の実施形態とを組み合わせて分析データ162を表示させてもよい。第2の実施形態とは異なり、第3、第4の実施形態において、領域は、地軸(x軸)周りの360度を分割したものであり、副領域は、各領域を、当該領域の中心から180度を分割したものである。よって、分析データ162を球状の三次元オブジェクトとして可視化する際に、球体オブジェクト4をデータ数nと項目数mのうち大きい方で領域に分割し、その後、データ数nと項目数mのうち小さい方で各領域を副領域に分割すると好適である。
【0082】
《第5の実施形態》
第5の実施形態では、分析データを円柱状の三次元オブジェクトとして可視化するものである。ここでは、最初に円柱を高さ方向に分割したのちに、円柱の中心軸から所定角度で分割している。以下、
図1に示したデータ可視化装置1が各処理を実行するものとして説明するが、
図2に示したデータ可視化サーバ2が各処理を実行して、三次元オブジェクトを端末3上に表示させてもよく、限定されない。
【0083】
図22Aと
図22Bは、第5の実施形態におけるデータの可視化処理のフローチャートである。
CPU11は、分析データ162から描画に必要な情報を算出する(S30)。ここで描画に必要な情報とは、分析データ162の項目数mと、各項目の時系列データ数nである。
【0084】
CPU11は、円柱オブジェクト6を高さ方向に時系列データ数nで領域61に分割する(S31)。更にCPU11は、各領域61を回転方向に項目数mで副領域611に分割する(S32)。以下、
図23を参照して、ステップS31の動作を説明する。
図24を参照して、ステップS32の動作を説明する。
【0085】
図23は、円柱オブジェクト6を高さ方向にn個の領域61に分割する動作を示す斜視図である。
図23においてx軸は上方であり、y軸は右奥方向であり、z軸は右手前方向である。
【0086】
分析データ162の時系列データ数はnである。データ可視化装置1のCPU11は、円柱の高さHを時系列データ数nで除算した高さH
1で、この円柱オブジェクト6をn個の領域61に分割する。これにより、全ての時系列データを円柱オブジェクト6上の領域61に対応づけることができる。領域61の順序は、これに対応付けられた時系列データの順序を表している。
【0087】
図24は、領域61を、更に回転方向にm個の副領域611に分割する動作を示す斜視図である。
図24においてx軸は上方であり、y軸は右奥方向であり、z軸は右手前方向である。
分析データ162の項目数はmである。データ可視化装置1のCPU11は、360度を項目数mで除算した角度θ
5で、円柱の軸を中心に領域61をm個の副領域611に分割する。これにより、全ての項目を、各副領域611に対応させることができる。
【0088】
図22Aに戻り説明を続ける。CPU11は、分割した副領域611が可視化可能な一定体積を超えるように、円柱オブジェクト6の半径rと高さHを決定する(S33)。
CPU11は、各項目をユーザが予め指定した項目との相関係数が高い順にソートして、各領域に対応付ける(S34)。これにより、各項目の相関を円柱オブジェクト6上に示すことができる。
次にCPU11は、各時系列データを時系列順に各副領域に対応付ける(S35)。これにより、各時系列データの順序を、各副領域の表面と中心との角度で示すことができる。
【0089】
図22BのステップS36〜S44において、CPU11は、項目数だけ処理を繰り返す。
ステップS37〜S43において、CPU11は、データ数だけ処理を繰り返す。
CPU11は、時系列データが欠損しているか否かを判定する(S38)。CPU11は、時系列データが欠損していないならば(No)、各時系列データの最大値が3r、最小値がrとなるように標準化を行って各データの半径r
dを求め(S39)、ステップS41に進む。ここで半径rは、データの最小値を示す第1所定値に相当する。半径3rは、データの最大値を示す第2所定値に相当する。
【0090】
CPU11は、時系列データが欠損しているならば(Yes)、データの半径r
dに0を設定し(S40)、ステップS41に進む。
ステップS41において、CPU11は、円柱情報と半径情報をもとに各副領域611の描画座標を決定する。ステップS41の処理により、CPU11は、各時系列データの値を、円柱オブジェクト6の軸から副領域の表面までの距離で示すことができる。
【0091】
CPU11は、ヒストグラムで最大度数の階級を基準とし、そこからの階級の数に応じて描画色を決定する(S42)。
【0092】
ステップS43において、CPU11は、当該項目において未処理のデータがあれば、ステップS37に戻る。CPU11は、当該項目の全データを処理したならば、ステップS44に進む。
ステップS44において、CPU11は、未処理の項目があれば、ステップS36に戻る。CPU11は、全項目を処理したならば、
図22Bの処理を終了する。
【0093】
第5の実施形態のデータ可視化装置1は、分析データ162を円柱オブジェクト6に変換し、データ分析に必要なトレンド情報とヒストグラム情報と相関係数の情報を、この円柱オブジェクト6に表現している。これにより、複数種類かつ多数のグラフを作成することなく、データを理解しやすい態様で可視化することができる。
【0094】
《第6の実施形態》
第6の実施形態では、データを円柱状の三次元オブジェクトとして可視化するものである。第5の実施形態とは異なり、最初に円柱の中心軸から所定角度で分割したのちに、高さ方向に分割している。以下、
図1に示したデータ可視化装置1が各処理を実行するものとして説明するが、
図2に示したデータ可視化サーバ2が各処理を実行して、三次元オブジェクトを端末3上に表示させてもよく、限定されない。
【0095】
図25Aと
図25Bは、第6の実施形態におけるデータの可視化処理のフローチャートである。
CPU11は、分析データ162から描画に必要な情報を算出する(S50)。ここで描画に必要な情報とは、分析データ162の項目数mと、各項目の時系列データ数nである。
【0096】
CPU11は、円柱オブジェクト7を回転方向に時系列データ数nで領域71に分割する(S51)。更にCPU11は、各領域71を高さ方向に項目数mで副領域711に分割する(S52)。以下、
図26を参照して、ステップS51の動作を説明する。
図27を参照して、ステップS52の動作を説明する。
【0097】
図26は、円柱オブジェクト7を回転方向にn個の領域71に分割する動作を示す斜視図である。
分析データ162の時系列データ数はnである。データ可視化装置1のCPU11は、360度を時系列データ数nで除算した角度θ
6で、この円柱オブジェクト7の軸を中心にn個の領域71に分割する。これにより、全ての時系列データを円柱オブジェクト7の領域71に対応づけることができる。領域71の順序は、これに対応付けられた時系列データの順序を表している。
【0098】
図27は、領域71を、更に高さ方向にm個の副領域711に分割する動作を示す斜視図である。
分析データ162の項目数は、mである。データ可視化装置1のCPU11は、円柱オブジェクト7の高さHを項目数mで除算した高さH
2で、この領域71をm個の副領域711に分割する。これにより、全ての項目を、各副領域711に対応させることができる。
【0099】
図25Aに戻り説明を続ける。CPU11は、分割した副領域711が可視化可能な一定体積を超えるように、円柱オブジェクト7の半径rと高さHを決定する(S53)。
CPU11は、各項目をユーザが予め指定した項目との相関係数が高い順にソートして、各領域に対応付ける(S54)。これにより、各項目の相関をオブジェクト上に示すことができる。
次にCPU11は、各時系列データを時系列順に各副領域に対応付ける(S55)。これにより、各時系列データの順序を、各副領域の高さで示すことができる。
【0100】
図25BのステップS56〜S64において、CPU11は、項目数だけ処理を繰り返す。
ステップS57〜S63において、CPU11は、各項目ごとの時系列データ数だけ処理を繰り返す。
【0101】
CPU11は、時系列データが欠損しているか否かを判定する(S58)。CPU11は、時系列データが欠損していないならば(No)、各時系列データの最大値が3r、最小値がrとなるように標準化を行って各データの半径r
dを求め(S59)、ステップS61に進む。ここで半径rは、データの最小値を示す第1所定値に相当する。半径3rは、データの最大値を示す第2所定値に相当する。
【0102】
CPU11は、時系列データが欠損しているならば(Yes)、データの半径r
dに0を設定し(S60)、ステップS61に進む。
ステップS61において、CPU11は、円柱情報と半径情報をもとに各副領域711の描画座標を決定する。ステップS61の処理により、CPU11は、各時系列データの値を、円柱オブジェクト7の軸から各副領域の表面までの距離で示すことができる。
【0103】
CPU11は、ヒストグラムで最大度数の階級を基準とし、そこからの階級の数に応じて描画色を決定する(S62)。
【0104】
ステップS63において、CPU11は、当該項目において未処理のデータがあれば、ステップS57に戻る。CPU11は、当該項目の全データを処理したならば、ステップS64に進む。
ステップS64において、CPU11は、未処理の項目があれば、ステップS56に戻る。CPU11は、全項目を処理したならば、
図25Bの処理を終了する。
【0105】
第6の実施形態のデータ可視化装置1は、分析データ162を円柱オブジェクト7に変換し、データ分析に必要なトレンド情報とヒストグラム情報と相関係数の情報を、この円柱オブジェクト7に表現している。これにより、複数種類かつ多数のグラフを作成することなく、データを理解しやすい態様で可視化することができる。
【0106】
(変形例)
本発明は上記した実施形態に限定されるものではなく、様々な変形例が含まれる。例えば上記した実施形態は、本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。ある実施形態の構成の一部を他の実施形態の構成に置き換えることが可能であり、ある実施形態の構成に他の実施形態の構成を加えることも可能である。また、各実施形態の構成の一部について、他の構成の追加・削除・置換をすることも可能である。
【0107】
上記の各構成、機能、処理部、処理手段などは、それらの一部または全部を、例えば集積回路などのハードウェアで実現してもよい。上記の各構成、機能などは、プロセッサがそれぞれの機能を実現するプログラムを解釈して実行することにより、ソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイルなどの情報は、メモリ、ハードディスク、SSD(Solid State Drive)などの記録装置、または、フラッシュメモリカード、DVD(Digital Versatile Disk)などの記録媒体に置くことができる。
【0108】
各実施形態に於いて、制御線や情報線は、説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には、殆ど全ての構成が相互に接続されていると考えてもよい。
本発明の変形例として、例えば、次の(a)〜(c)のようなものがある。
【0109】
(a) 上記実施形態では、時系列データ数だけ領域に分割したのち、各領域を項目数だけ分割している。しかし、これに限られず、項目数だけ領域に分割したのち、各領域を時系列データ数だけ分割してもよく、限定されない。
(b) 上記実施形態では、分析データを表現する三次元オブジェクトとして、球体と円柱の例を説明した。しかし、これに限られず、例えば楕円体やトーラスなどで分析データを表現してもよく、限定されない。
(c) 上記実施形態では、トレンド情報とヒストグラム情報と相関係数の情報の3種類の情報を三次元オブジェクトから読み取れるようにしている。しかし、これに限られず、例えばトレンド情報とヒストグラム情報、トレンド情報と相関係数の情報、ヒストグラム情報と相関係数の情報のように、2種類の情報を三次元オブジェクトから読み取れるようにしてもよい。
【解決手段】データ可視化方法は、データ可視化装置のCPUに、複数の項目に属する複数個のデータから、項目の数とデータ数の積で球体オブジェクトを副領域に分割させ、何れかの項目と他の項目との相関係数を算出させ、相関係数に応じて各項目を並び替えさせ、並び替え後の各項目の各データを各副領域に割り当てて、各副領域により各データの値と順序とを示す。