JP6352753B2 - グラフ表示装置、方法、及びプログラム - Google Patents

グラフ表示装置、方法、及びプログラム Download PDF

Info

Publication number
JP6352753B2
JP6352753B2 JP2014198458A JP2014198458A JP6352753B2 JP 6352753 B2 JP6352753 B2 JP 6352753B2 JP 2014198458 A JP2014198458 A JP 2014198458A JP 2014198458 A JP2014198458 A JP 2014198458A JP 6352753 B2 JP6352753 B2 JP 6352753B2
Authority
JP
Japan
Prior art keywords
graph
unit
time information
program
records
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2014198458A
Other languages
English (en)
Other versions
JP2016071503A (ja
Inventor
黒田 亮
亮 黒田
秀則 松崎
秀則 松崎
真由子 肥塚
真由子 肥塚
信明 東條
信明 東條
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2014198458A priority Critical patent/JP6352753B2/ja
Priority to US14/858,033 priority patent/US9727990B2/en
Publication of JP2016071503A publication Critical patent/JP2016071503A/ja
Application granted granted Critical
Publication of JP6352753B2 publication Critical patent/JP6352753B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/206Drawing of charts or graphs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24564Applying rules; Deductive queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24564Applying rules; Deductive queries
    • G06F16/24565Triggers; Constraints
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2477Temporal data queries

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Software Systems (AREA)
  • User Interface Of Digital Computer (AREA)
  • Digital Computer Display Output (AREA)

Description

本発明の実施形態は、グラフ表示装置、方法、及びプログラムに関する。
数値データの特徴や傾向を視覚的に表現するために、当該数値データに基づくグラフを作成し、表示画面に表示するグラフ表示装置が、一般に広く利用されている。このようなグラフ表示装置において、ユーザーは、グラフの作成に用いる数値データの範囲やグラフの形態等を様々に指定することができる。
また、近年は様々な分野において、ビッグデータを活用した研究開発が行われている。このようなビッグデータの活用においても、数値データを解析してグラフを作成することは極めて重要であり、広く望まれている。
しかしながら、ビッグデータの処理において扱われるデータ量は膨大であり、一般的なコンピュータを用いる場合、ユーザーの要求によっては、グラフの作成や表示に相当の時間が掛かることがある。この場合、ユーザーはグラフの作成や表示に掛かる時間を把握できないため、不便を要する。
特開2009−245128号公報
発明が解決しようとする課題は、ユーザーにとって利便性の高いグラフ表示装置、方法、及びプログラムを提供することである。
上記課題を解決するために、本発明の一の実施形態に係るグラフ表示装置は、条件受付部と、時間情報表示部と、指示受付部と、グラフ表示部とを備える。
条件受付部は、複数のデータを含むグラフデータから、少なくとも1つの前記データを特定するための条件を受け付ける。時間情報表示部は、前記条件によって特定された前記データに基づいたグラフの表示に要する時間に関する時間情報を表示する。指示受付部は、前記グラフの表示を開始するための指示を受け付ける。グラフ表示部は、前記指示を受け付けた場合に、前記グラフを表示する。
第1の実施形態に係るグラフ表示システム1の表示画面100を表す一例図。 グラフ表示システム1の構成図。 グラフ表示装置2及びサーバ3のハードウェア構成の一例図。 グラフ表示システム1の機能ブロック図。 格納部14が格納するグラフデータを表す一例図。 格納部14が格納する管理データを表す一例図。 グラフ表示システム1の処理を表すフローチャート。 グラフ表示部132が表示するグラフの一例図。 プログラムの一例図。 第2の実施形態に係るグラフ表示システム200の機能ブロック図。 格納部24が格納するグラフデータを表す一例図。 格納部24が格納する管理データを表す一例図。 グラフ表示システム200の処理を表すフローチャート。 グラフ表示部132が表示するグラフの一例図。 格納部24が格納するグラフデータを表す一例図。 グラフ表示部132が表示するグラフの一例図。 格納部24が格納するグラフデータを表す一例図。 グラフ表示部132が表示するグラフの一例図。
以下、本発明の実施形態について図面を参照して詳細に説明する。本願明細書と各図において、既出の図に関して前述したものと同様の要素には同一の符号を付して詳細な説明は適宜省略する。
(第1の実施形態)
第1の実施形態に係るグラフ表示システム1は、数値データに基づくグラフを生成して表示することが可能なシステムである。グラフ表示システム1は、表示すべきグラフに関する条件をユーザーから受け付ける。グラフ表示システム1は、受け付けた条件からグラフの生成に関する時間情報を求め、表示画面に表示する。グラフ表示システム1は、ユーザーからグラフの表示の指示を受け付けた場合に、グラフの生成を開始し、表示画面に表示する。
これにより、ユーザーは、グラフの表示に掛かる時間を事前に把握し、システムにグラフの作成及び表示を実行させるか否かを判断することができる。このため、ユーザーの心理的負荷を軽減することができる。
本実施形態で述べるグラフとは、散布図、円グラフ、棒グラフ、折れ線グラフ、エリアグラフ、ガントチャート、箱ひげ図、表、相関図、ヒートマップ、ツリーチャート、マトリクスマップ等、受け付けた条件に対応して生成される図であれば、如何なるものであっても構わない。
図1は、グラフ表示システム1の表示画面100を表す一例図である。グラフ表示システム1は、条件入力画面101と、時間情報表示画面102と、表示指示ボタン103と、グラフ表示画面104とを、表示画面100に表示する。条件入力画面101は、ユーザーが表示すべきグラフについての条件を入力する画面である。時間情報表示画面102は、受け付けた条件からグラフの表示に関する時間情報を表示する画面である。表示指示ボタン103は、グラフの表示の指示を入力するボタンである。グラフ表示画面104は、生成されたグラフを表示する画面である。
図2は、グラフ表示システム1の構成図である。グラフ表示システム1は、グラフ表示装置2とサーバ3とを含む。グラフ表示装置2とサーバ3とは、インターネット等のネットワーク4を介して接続される。
グラフ表示装置2は、ユーザーが操作可能な装置であり、例えば、パーソナルコンピュータ(PC)、タブレットPC、スマートフォン等の情報処理端末である。サーバ3は、グラフ表示装置2に表示されるグラフを生成する処理の少なくとも一部を行なう。図2において、グラフ表示装置2とサーバ3とは、各々1つずつ描かれているが、グラフ表示装置2とサーバ3とは、各々複数あってもよい。
図3は、グラフ表示装置2及びサーバ3のハードウェア構成の一例図である。グラフ表示装置2及びサーバ3は、通常のコンピュータに用いられる構成を有し、CPU(Central Processing Unit)5、ROM(Read Only Memory)6、RAM(Random Access Memory)7、入力デバイス8、出力デバイス9、及び通信I/F10を含む。CPU5は、ROM6等に記憶された制御プログラムに従ってRAM7をワーキングエリアとして所定の演算処理を行う。入力デバイス8は、外部から情報を入力するためのデバイスであり、例えばキーボード、マウス、タッチパネル等である。出力デバイス9は、内部で生成した情報を外部に出力するためのデバイスであり、例えばディスプレイである。通信I/F10は、ネットワーク4を介して外部の装置との間で情報の送受信を可能にするデバイスである。
図4は、グラフ表示システム1の機能ブロック図である。グラフ表示システム1は、入力部11と、処理部12と、表示部13と、格納部14とを備える。本実施形態では、グラフ表示装置2は、入力部11と、処理部12と、表示部13と含む。サーバ3は、格納部14を含む。
格納部14は、グラフの生成に用いるグラフデータ、及び、管理データを格納している。図5は、格納部14が格納するグラフデータを表す一例図である。格納部14は、第1の要素と、第2の要素とを対応付けたグラフデータを格納する。第1の要素は、属性が時系列である時系列パラメータを複数含む。本実施形態では、時系列パラメータの単位を「秒」として説明する。第2の要素は、当該時系列パラメータに対応し、属性が数値である数値パラメータを複数含む。すなわち、各要素は、属性が共通するパラメータを複数含む。
本実施形態において、1つの時系列パラメータと、当該時系列パラメータに対応する数値パラメータとの組をレコードと呼ぶ。図5の例では、時系列パラメータ「1」と、それに対応する数値パラメータ「10」との組が、1つのレコードである。すなわち、本実施形態におけるデータは、レコードの集合で表される。
図6は、格納部14が格納する管理データを表す一例図である。格納部14は、管理単位情報と、レコード数情報とを対応付けて格納する。管理単位情報とは、時系列パラメータを所定の範囲で区切り、グループ化した単位(管理単位と呼ぶ)の集合である。図6の例では、時系列パラメータを60秒毎に区切り、各々を1つの管理単位とする。レコード数情報は、時系列パラメータが管理単位に含まれるレコードの数を表す。図6の例では、時系列パラメータが「1」秒から「60」秒までに、「42」個のレコードが存在することを示している。
入力部11は、条件入力部111と、指示入力部112とを含む。処理部12は、条件受付部121と、時間情報算出部122と、指示受付部123と、グラフ生成部124とを含む。表示部13は、時間情報表示部131と、グラフ表示部132とを含む。
条件入力部111は、ユーザーの指定により、表示すべきグラフに関する条件を入力する。本実施形態における条件は、格納部14に格納されたグラフデータの第1の要素において、一又は複数の時系列パラメータを指定するものである。例えば、本実施形態の条件は、グラフデータの第1の要素において、時系列パラメータの範囲を指定するものであってよい。あるいは、所定の閾値以上の時系列パラメータ、所定の閾値以下の時系列パラメータ、所定の値と等しい時系列パラメータ、もしくは、それらの組み合わせであってもよい。
指示入力部112は、ユーザーの指定により、グラフの表示の指示を入力する。
条件受付部121は、条件入力部111で入力された条件を受け付ける。時間情報算出部122は、受け付けた条件に基づいて、格納部14から管理データを取得する。時間情報算出部122は、取得された管理データを用いて、受け付けた条件を満たすレコード数情報を得る。時間情報算出部122は、得られたレコード数情報に基づいて、時間情報を算出する。
指示受付部123は、指示入力部112で入力された、グラフの表示の指示を受け付ける。グラフ生成部124は、指示受付部123が、グラフの表示の指示を受け付けた場合に、条件受付部121が受け付けた条件を満たすグラフデータを格納部14から取得し、取得したグラフデータに基づいてグラフを生成する。
時間情報表示部131は、時間情報算出部122が生成した時間情報を表示する。グラフ表示部132は、グラフ生成部124が生成したグラフを表示する。
以上、グラフ表示システム1の構成について説明した。
図7は、グラフ表示システム1の処理を表すフローチャートである。ステップS101において、条件入力部111は、ユーザーの指定により、表示すべきグラフに関する条件を入力する(S101)。本実施形態において、入力された条件は、図1に示す表示画面100の条件入力画面101に表示される。
例えば、条件入力部111は、第1の要素の中で、「30秒」〜「130秒」の時系列パラメータの範囲を指定する条件を入力する。この条件を「条件A」と呼ぶ。
ステップS102において、条件受付部121は、入力された条件を受け付ける(S102)。条件受付部121は、受け付けた条件を、時間情報算出部122とグラフ生成部124とに供給する。
ステップS103において、時間情報算出部122は、格納部14の管理データを参照し、受け付けた条件を満たす管理単位情報に対応するレコード数情報を取得する(S103)。
例えば、条件受付部121が条件Aを受け付けた場合、時間情報算出部122は、格納部14の管理データを参照し、管理単位情報の中で、「30秒」〜「130秒」が含まれる管理単位を探索する。図6の場合、「30秒」〜「60秒」は、「1−60」の管理単位に含まれ、「61秒」〜「120秒」は、「61−120」の管理単位に含まれ、「121秒」〜「130秒」は、「121−180」の管理単位に含まれる。
従って、時間情報算出部122は、「1−60」の管理単位に対応するレコード数「42」と、「61−120」の管理単位に対応するレコード数「60」と、「121−180」の管理単位に対応するレコード数「12」とを取得する。
格納部14が管理単位情報を格納することにより、時間情報算出部122は、格納部14が格納するグラフデータを参照し、受け付けた条件を満たすレコード数を全てカウントすることなく、おおよそのレコード数を取得することができる。このため、次ステップにおける時間情報の算出までの処理を高速化することができる。
ステップS104において、時間情報算出部122は、取得したレコード数情報から、時間情報を算出する(S104)。
時間情報は、レコード数と、1レコードあたりの時間情報(単位時間情報と呼ぶ)とに基づいて求めてよい。例えば、1レコードあたりの単位時間情報は、1レコードあたりのグラフの描画に要する時間、1レコードあたりのグラフの生成に要する時間、1レコードあたりのグラフデータの転送に要する時間、1レコードあたりのグラフデータの取得に要する時間、あるいは、これらの組合せに基づいて算出されてもよい。
時間情報算出部122は、予め定められた単位時間情報を保持しており、取得されたレコード数情報と、予め保持している単位時間情報とに基づいて、時間情報を算出してよい。
また、時間情報は、データサイズ(例えば、バイト数等)と、単位データサイズあたりの単位時間情報とに基づいて、算出されても良い。この場合、単位時間情報は、1データサイズあたり(例えば、1バイトあたり)で定めておけばよい。
本実施形態において、時間情報算出部122は、取得したレコード数情報と、単位時間情報との乗算により、時間情報を算出する。例えば、条件受付部121が条件Aを受け付けた場合、時間情報算出部122は、取得したレコード数情報「114(=42+60+12)」と、単位時間情報(1レコードあたり10ミリ秒とする)とを乗算し、時間情報「1140ミリ秒(114レコード×10ミリ秒)」を得る。
時間情報算出部122は、算出した時間情報を、時間情報表示部131に供給する。
ステップS105において、時間情報表示部131は、時間情報を表示する(S105)。本実施形態において、時間情報表示部131は、図1に示す表示画面100の時間情報表示画面102に、時間情報を表示する。
例えば、条件受付部121が条件Aを受け付けた場合、時間情報表示部131は、時間情報算出部122が算出した時間情報「1140ミリ秒」を表示する。
ステップS106において、指示入力部112は、ユーザーからの指示により、指示入力部112は、ユーザーの指定により、グラフの表示の指示を入力する(S106)。本実施形態では、図1に示す表示画面100の表示指示ボタン103を、ユーザーがマウスやキーボード等の入力デバイス8で指定することにより、指示を入力する。
なお、本ステップ以降は、グラフの表示の指示が入力された場合を説明する。グラフの表示の指示が入力されない場合は、ステップS105で待機状態となるか、ステップS101に遷移し、新たに条件が入力されることになる。
ステップS107において、指示受付部123は、指示入力部112で入力された、グラフの表示の指示を受け付ける(S107)。指示受付部123は、受け付けた指示を、グラフ生成部124に供給する。
ステップS108において、グラフ生成部124は、格納部14に格納されたグラフデータから、条件受付部121が受け付けた条件に対応するレコードを取得し、取得したレコードに基づくグラフを生成する(S108)。
例えば、条件受付部121が条件Aを受け付けた場合、グラフ生成部124は、条件受付部121がグラフの表示の指示を受け付けたことをトリガとして、格納部14に格納されたグラフデータから、時系列パラメータが「30秒」〜「130秒」の範囲に含まれるレコードを取得する。
図5の例では、(時系列パラメータ,数値パラメータ)が、(1,10)、(2,21)、(3,31)、(5,15)、(8,52)、(10,23)、(12,25)、(14,1)、(19,44)、(20,12)、(24,2)、(30,11)、・・・、(130,44)が、条件Aを満たすレコードである。グラフ生成部124は、これらのレコードを格納部14から取得し、時系列パラメータと数値パラメータとの対応関係を示すグラフを生成する。
グラフ生成部124は、生成したグラフをグラフ表示部132に供給する。
ステップS109において、グラフ表示部132は、供給されたグラフを表示する(S109)。図8は、条件受付部121が条件Aを受け付けた場合において、グラフ表示部132が表示するグラフの一例図である。本実施形態において、グラフ表示部132は、図1に示す表示画面100のグラフ表示画面104に散布図のグラフを表示する。
以上、グラフ表示システム1の処理について説明した。
(変形例1)
本実施形態の管理データは、管理単位情報と、レコード数情報とを対応付けたものであるとして説明したが、管理単位情報と、レコードのデータサイズとを対応付けたものであっても構わない。
(変形例2)
本実施形態の時間情報は、時間のほかに、レコードの数、レコードの量、レコードのサイズ、レコードの規模、あるいは、これらの値を用いて求まるものであってもよい。
また、上記の値について、少なくとも1つの閾値を予め設定しておき、当該値が当該閾値以下であるか否かをユーザーが識別可能な情報を、時間情報表示部131が時間情報として表示しても構わない。
すなわち、本実施形態の時間情報は、グラフの表示までに要する時間に関わるものであれば如何なるものであってもよい。
(変形例3)
時間情報表示部131は、時間情報算出部122が算出した時間情報をそのまま表示しなくてもよい。例えば、「1.14秒」のように単位を変更して表示たり、「1秒」のように、小数点以下を四捨五入して表示しても構わない。すなわち、時間情報の表示の仕方は、装置の仕様等に合わせて、適宜変更してよい。
(変形例4)
本実施形態における条件は、格納部14に格納されたグラフデータの第1の要素において、一又は複数の時系列パラメータを指定するものであるとして説明した。しかしながら、さらに、変形例2に示したようなグラフの種類を指定するための条件も追加して構わない。
この場合、時間情報算出部122は、予め定められた単位時間情報と、各グラフの種類とを対応付けた情報を保持しており、取得されたレコード数情報と、予め保持している単位時間情報と、受け付けたグラフの種類を指定する条件とに基づいて、時間情報を算出してよい。
(変形例5)
本実施形態のグラフ表示システム1は、図7に示すように、指示受付部123がグラフの表示の指示を受け付けた(S107)後に、グラフ生成部124がグラフを生成する場合を説明したが、グラフ生成部124は、条件受付部121が条件を受け付けた時点からグラフの生成を開始しても構わない。この場合、グラフ生成部124は、指示受付部123がグラフの表示の指示を受け付けた場合には、グラフの生成を継続し、条件受付部121が別の条件を受け付けた場合に、グラフの生成を中止する。
(変形例6)
本実施形態では、格納部14に格納されたグラフデータからグラフを作成する例について説明したが、格納部14はデータベース(DB)であり、グラフ表示システム1は、DBである格納部14から取得した情報を表示しても構わない。この場合、格納部14に格納されるグラフデータは、検索対象と、当該検索対象対応付けられた付帯情報(例えば、キーワード等)とを含む。また、格納部14が格納する管理データは、付帯情報が共通する検索対象を管理単位としてよい。この場合、管理データは、付帯情報とレコード数とを対応付けたものとなる。
(変形例7)
本実施形態では、グラフ表示装置2は情報処理端末であり、入力部11と、処理部12と、表示部13とを備え、サーバ3が格納部14を備えるとして説明したが、グラフ表示装置2が入力部11と、表示部13とを備え、サーバ3が処理部12を備えても構わない。
あるいは、サーバ3を介さず、グラフ表示装置2が入力部11と、処理部12と、表示部13と、格納部14とを備えても構わない。
本実施形態によれば、グラフの作成や表示に相当の時間が掛かる場合であっても、ユーザーに対して、グラフの表示に要する時間に関する時間情報を示すことができるため、ユーザーの心理的負荷を軽減することができる。特に取り扱うデータ量が膨大なビッグデータにおいては、グラフの表示に掛かる時間も数時間から数十時間となる場合もあるため、本実施形態は有用である。
以上、第1の実施形態について説明した。
(第2の実施形態)
第2の実施形態に係るグラフ表示システム200は、グラフの表示に用いるグラフデータがプログラム構造データである点が、第1の実施形態の場合と異なる。
本実施形態のプログラムとは、情報処理装置に対する命令を記述したものであり、例えば、C言語、JAVA(登録商標)言語等のプログラミング言語により記述されたソースコード等である。
図9は、プログラムの一例図である。図9に示すプログラム(ソースコード)は、複数のプログラム構造単位を含む。プログラム構造単位とは、プログラムにおける所定の連続した区間を表すものである。例えば、プログラム構造単位は、ファイル、関数、ループ、条件分岐、スコープ等であってよい。
すなわち、プログラムは、複数のプログラム構造単位で構成される階層構造を有しており、ある1つのプログラム構造単位は、別の1つのプログラム構造単位に包含されるか包含されないかのいずれかである。
図9の例では、ファイル「FileA」は、関数「FuncA」を包含する。関数「FuncA」は、ループ「LoopA」を包含する。このループ「LoopA」を特定する記載を、「FileA:FuncA:LoopA」と表すこととする。すなわち、図9の例では、「FileA:FuncA:LoopA」は成り立つが、「FileA:FuncB:LoopA」は成り立たない。このように、プログラムは、プログラム構造単位同士の包含関係を表している。この「FileA:FuncA:LoopA」等というプログラム構造単位同士の包含関係を示すデータを、「プログラム構造データ」と呼ぶ。
図10は、グラフ表示システム200の機能ブロック図である。グラフ表示システム200は、前実施形態のグラフ表示システム1と比較して、格納部14が格納部24に置き換わる。格納部24は、前実施形態の格納部14と同様に、グラフの生成に用いるグラフデータ、及び、管理データを格納している。しかしながら、格納部24は、当該グラフデータとして、プログラム構造データを格納している。
図11は、格納部24が格納するグラフデータを表す一例図である。図11に示すように、格納部24は、第1の要素と、第2の要素とを対応付けたグラフデータを格納する。第1の要素は、複数のプログラム構造データを含む。すなわち、属性がプログラム構造である。第2の要素は、各プログラム構造データに対応する数値データ(本例では、実行時間(ミリ秒)とする)を含む。すなわち、属性が実行時間である。例えば、図11では、「FileA:FuncA:LoopA」で表されるループ「LoopA」に対応する処理の実行時間が10ミリ秒であることを示している。ここで、本実施形態の数値データとは、プログラム構造データに対応する数字で表されるデータであれば如何なるものであっても構わない。例えば、本実施形態の数値データには、実行時間、メモリアクセス時間、メモリアクセス回数、命令実行回数等がある。
なお、本実施形態では、1つのプログラム構造データと、当該プログラム構造データに対応する実行時間との組をレコードと呼ぶ。
図12は、格納部24が格納する管理データを表す一例図である。前実施形態と同様に、格納部24は、管理単位情報と、レコード数情報とを対応付けて格納する。管理単位は所定の規則に従って定められる。本実施形態では、階層構造における末端のデータ構造単位より、上の階層のデータ構造単位を特定するプログラム構造データを管理単位とする。レコード数情報は、管理単位に含まれるプログラム構造データに対応するレコードの個数を表す。図12の例では、「FileA:FuncA」という管理単位には、「62」個のレコード(プログラム構造データ)が存在することを示している。
図13は、グラフ表示システム1の処理を表すフローチャートである。基本的な処理の流れは、前実施形態と同様であるが、受け付ける条件や、格納部24に格納されるグラフデータ及び管理データが前実施形態と異なるため、以下に例を挙げて説明する。なお、本実施形態の場合の表示画面は、前実施形態の表示画面100と同様である。
ステップS201において、条件入力部111は、ユーザーの指定により、表示すべきグラフに関する条件を入力する(S201)。本実施形態における条件は、格納部24に格納されたグラフデータの第1の要素において、一又は複数のプログラム構造データを指定するものである。例えば、本実施形態の条件は、特定のプログラム構造単位に含まれる、他の一又は複数のプログラム構造単位を指定するものであってよい。特定のプログラム構造単位の下位の層に含まれる、全ての他のプログラム構造単位を指定するものであってよい。
本実施形態において、入力された条件は、図1に示す表示画面100の条件入力画面101に表示される。
例えば、条件入力部111は、第1の要素の中で、「FileAに包含される」プログラム構造データを指定する条件を入力する。この条件を以降、条件Bと呼ぶ。
ステップS202において、条件受付部121は、入力された条件を受け付ける(S202)。条件受付部121は、受け付けた条件を、時間情報算出部122とグラフ生成部124とに供給する。
ステップS203において、時間情報算出部122は、格納部24の管理データを参照し、受け付けた条件を満たす管理単位情報に対応するレコード数情報を取得する(S203)。
例えば、条件受付部121が条件Bを受け付けた場合、時間情報算出部122は、格納部24の管理データを参照し、管理単位情報の中で、FileAに包含されることを示す管理単位を探索する。図13の場合、管理単位の先頭が「FileA:」となっている、「FileA:FuncA」と、「FileA:FuncB」とが、条件Bを満たす。
従って、時間情報算出部122は、「FileA:FuncA」の管理単位に対応するレコード数「62」と、「FileA:FuncB」の管理単位に対応するレコード数「60」とを取得する。
ステップS204において、時間情報算出部122は、取得したレコード数情報から、時間情報を算出する(S204)。
本実施形態の場合も前実施形態の場合と同様に、時間情報算出部122は、取得したレコード数情報と、単位時間情報との乗算により、時間情報を算出する。例えば、条件受付部121が条件Bを受け付けた場合、時間情報算出部122は、取得したレコード数情報「112(=62+60」と、単位時間情報(1レコードあたり10ミリ秒とする)とを乗算し、時間情報「1120ミリ秒(112レコード×10ミリ秒)」を得る。
時間情報算出部122は、算出した時間情報を、時間情報表示部131に供給する。
ステップS205において、時間情報表示部131は、時間情報を表示する(S205)。本実施形態において、時間情報表示部131は、図1に示す表示画面100の時間情報表示画面102に、時間情報を表示する。
例えば、条件受付部121が条件Bを受け付けた場合、時間情報表示部131は、時間情報算出部122が算出した時間情報「1120ミリ秒」を表示する。
ステップS206において、指示入力部112は、ユーザーからの指示により、指示入力部112は、ユーザーの指定により、グラフの表示の指示を入力する(S206)。
なお、本実施形態においても、本ステップ以降は、グラフの表示の指示が入力された場合を説明する。グラフの表示の指示が入力されない場合は、ステップS205で待機状態となるか、ステップS201に遷移し、新たに条件が入力されることになる。
ステップS207において、指示受付部123は、指示入力部112で入力された、グラフの表示の指示を受け付ける(S207)。指示受付部123は、受け付けた指示を、グラフ生成部124に供給する。
ステップS208において、グラフ生成部124は、格納部24に格納されたグラフデータから、条件受付部121が受け付けた条件に対応するレコードを取得し、取得したレコードに基づくグラフを生成する(S208)。
例えば、条件受付部121が条件Bを受け付けた場合、グラフ生成部124は、条件受付部121がグラフの表示の指示を受け付けたことをトリガとして、格納部14に格納されたグラフデータから、プログラム構造データが「FileA」に含まれるレコードを取得する。
図11の例では、(プログラム構造データ,実行時間)が、(FileA:FuncA:ScopeA,10)、(FileA:FuncA:ScopeB,21)、(FileA:FuncA:LoopA,31)、・・・、(FileA:FuncB:LoopB,15)、(FileA:FuncB:LoopB:LoopC,52)、(FileA:FuncB:LoopB:LoopD,23)、・・・が、条件Bを満たすレコードである。グラフ生成部124は、これらのレコードを格納部24から取得し、プログラム構造データと、実行時間との対応関係を示すグラフを生成する。
グラフ生成部124は、生成したグラフをグラフ表示部132に供給する。
ステップS209において、グラフ表示部132は、供給されたグラフを表示する(S209)。図14は、条件受付部121が条件Bを受け付けた場合において、グラフ表示部132が表示するグラフの一例図である。本実施形態において、グラフ表示部132は、図1に示す表示画面100のグラフ表示画面104に棒グラフを表示する。
以上で、グラフ表示システム1の処理について説明した。
(変形例1)
本実施形態では、格納部24が格納するグラフデータにおいて、第1の要素は、複数のプログラム構造データを含み、第2の要素は、各プログラム構造データに対応する数値データを含むとして説明したがこれに限られない。例えば、第2の要素は、各プログラム構造データに対応する処理を実行したCPUのコアを示す情報等の文字データであっても構わない。
図15は、本変形例の格納部24が格納するグラフデータの一例図である。本変形例では、第2の要素が、「CPUのコア情報」である点が、図11の場合と異なる。すなわち、本例では、例えば、プログラム構想データ「FileA:FuncA:ScopeA」に対応する処理を実行したCPUのコアが、「Core4」であることを示している。なお、本変形例の管理データは、図12と同様である。
この場合、グラフ生成部124は、受け付けた条件を満たすレコードを格納部24から取得し、プログラム構造データと、CPUのコア情報との対応関係を示すグラフを生成する。
図16は、条件受付部121が条件Bを受け付けた場合において、グラフ表示部132が表示するグラフの一例図である。本例におけるグラフは、各プログラム構造データと、実行するコアとの対応を色分けで示すマトリクスマップである。本実施形態において、グラフ表示部132は、図1に示す表示画面100のグラフ表示画面104に当該マトリクスマップを表示する。
(変形例2)
変形例1に加え、格納部24が格納するグラフデータは、第3の要素をさらに含んでも構わない。例えば、第1の要素がプログラム構造データであり、第2の要素が数値データ(例えば、本実施形態で述べた実行時間)であり、第3の要素が文字データ(例えば、本実施形態の変形例1で述べたCPUのコア情報)であってもよい。
図17は、本変形例における格納部24が格納するグラフデータの一例図である。本変形例では、第3の要素として、「CPUのコア情報」で追加されている点が、図15の場合と異なる。すなわち、本例では、例えば、プログラム構想データ「FileA:FuncA:ScopeA」に対応する処理の実行時間が「10ミリ秒」であり、当該処理を実行したCPUのコアが、「Core4」であることを示している。なお、本変形例の管理データは、図12と同様である。
この場合、グラフ生成部124は、受け付けた条件を満たすレコードを格納部24から取得し、プログラム構造データと、実行時間と、CPUのコア情報との対応関係を示すグラフを生成する。
図18は、条件受付部121が条件Bを受け付けた場合において、グラフ表示部132が表示するグラフの一例図である。本例におけるグラフは、各プログラム構造データと、実行するコアとの対応を色表示で示し、かつ、各プログラム構造データに対応する実行時間を色の濃度で示すヒートマトリクスマップである。色の濃度は、例えば、実行時間が長いほど濃くなるよう設定されていても良い。あるいは、所定の閾値以上か否かに応じて、濃度を分けてもよい。濃度を分けるための当該閾値は複数あっても構わない。本実施形態において、グラフ表示部132は、図1に示す表示画面100のグラフ表示画面104に当該ヒートマトリクスマップを表示する。
なお、前実施形態で述べた変形例は、本実施形態の場合も同様に実施することができる。
本実施形態によれば、プログラムを作製する際に、グラフを用いて当該プログラムの実行状況の確認を行うことが可能な装置において、グラフの作成や表示に相当の時間が掛かる場合であっても、予めユーザーに対して、グラフの表示に要する時間に関する時間情報を示すことができるため、ユーザーの心理的負荷を軽減することができる。特に、取り扱うプログラム構造データが膨大なビックデータにおいては、グラフの表示に掛かる時間も数時間から数十時間となる場合もあるため、本実施形態は有用である。
以上、第2の実施形態について説明した。
上述した実施形態によれば、ユーザーにとって利便性の高いグラフ表示システムやグラフ表示装置を提供することができる。
なお、上述した実施形態は、例として表示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
1,200・・・グラフ表示システム
2・・・グラフ表示装置
3・・・サーバ
4・・・ネットワーク
5・・・CPU
6・・・ROM
7・・・RAM
8・・・入力デバイス
9・・・出力デバイス
10・・・通信I/F
11・・・入力部
12・・・処理部
13・・・表示部
14,24・・・格納部
100・・・表示画面
101・・・条件入力画面
102・・・時間情報表示画面
103・・・表示指示ボタン
104・・・グラフ表示画面
111・・・条件入力部
112・・・指示入力部
121・・・条件入力部
122・・・時間情報算出部
123・・・指示受付部
124・・・グラフ生成部
131・・・時間情報表示部
132・・・グラフ表示部

Claims (8)

  1. 階層構造を有するプログラムの構成単位を表すプログラム構造要素とデータとが対応づけられた複数のレコードの少なくとも1つのレコードに基づくグラフを表示するグラフ表示装置であって、
    複数のプログラム構造要素から少なくとも1つの前記プログラム構造要素を特定するための条件を受け付ける条件受付部と、
    特定された前記プログラム構造要素に対応する前記レコードに基づくグラフの表示に要する時間に関する時間情報を表示する時間情報表示部と、
    前記グラフの表示を開始するための指示を受け付ける指示受付部と、
    前記指示を受け付けた場合に、前記グラフを表示するグラフ表示部と、を備え、
    前記複数のレコードは、所定の階層の前記プログラム構造要素に基づいてレコード数が管理されており、
    前記時間情報表示部は、前記レコード数に基づく時間情報を表示する、
    グラフ表示装置。
  2. 階層構造を有するプログラムの構成単位を表すプログラム構造要素とデータとが対応づけられた複数のレコードの少なくとも1つのレコードに基づくグラフを表示するグラフ表示装置で実行されるグラフ表示方法であって、
    複数のプログラム構造要素から少なくとも1つの前記プログラム構造要素を特定するための条件を受け付け、
    特定された前記プログラム構造要素に対応する前記レコードに基づくグラフの表示に要する時間に関する時間情報を表示し、
    前記グラフの表示を開始するための指示を受け付け、
    前記指示を受け付けた場合に、前記グラフを表示し、
    前記複数のレコードは、所定の階層の前記プログラム構造要素に基づいてレコード数が管理されており、
    前記時間情報は、前記レコード数に基づく、
    グラフ表示方法。
  3. 階層構造を有するプログラムの構成単位を表すプログラム構造要素とデータとが対応づけられた複数のレコードの少なくとも1つのレコードに基づくグラフを表示するグラフ表示装置が備えるコンピュータを、
    複数のプログラム構造要素から少なくとも1つの前記プログラム構造要素を特定するための条件を受け付ける手段と、
    特定された前記プログラム構造要素に対応する前記レコードに基づくグラフの表示に要する時間に関する時間情報を生成する手段と、
    前記グラフの表示を開始するための指示を受け付ける手段と、
    前記指示を受け付けた場合に、前記グラフを生成する手段として機能させ、
    前記複数のレコードは、所定の階層の前記プログラム構造要素に基づいてレコード数が管理されており、
    前記時間情報は、前記レコード数に基づいて生成される、
    グラフ表示プログラム。
  4. 前記データは、前記プログラムを実行したことで得られる情報である、
    請求項1に記載のグラフ表示装置。
  5. 前記データは、前記プログラム構造要素に対応する実行時間、メモリアクセス時間、メモリアクセス回数、および、命令実行回数のいずれか少なくとも1つを含む、
    請求項1に記載のグラフ表示装置。
  6. 前記所定の階層は、前記プログラムの階層構造における末端のデータ構造単位より上の階層である、
    請求項1に記載のグラフ表示装置。
  7. 前記時間情報表示部は、前記レコード数の管理に用いられたプログラム構造要素のうち、前記条件受付部で受け付けた条件によって特定された前記プログラム構造要素に包含される前記プログラム構造要素に基づく前記レコード数から生成された前記時間情報を表示する、
    請求項1に記載のグラフ表示装置。
  8. 前記時間情報は、少なくともグラフの描画に要する時間に基づいて生成される、
    請求項1に記載のグラフ表示装置。
JP2014198458A 2014-09-29 2014-09-29 グラフ表示装置、方法、及びプログラム Active JP6352753B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014198458A JP6352753B2 (ja) 2014-09-29 2014-09-29 グラフ表示装置、方法、及びプログラム
US14/858,033 US9727990B2 (en) 2014-09-29 2015-09-18 Graph display device, method and computer-readable medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014198458A JP6352753B2 (ja) 2014-09-29 2014-09-29 グラフ表示装置、方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2016071503A JP2016071503A (ja) 2016-05-09
JP6352753B2 true JP6352753B2 (ja) 2018-07-04

Family

ID=55585018

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014198458A Active JP6352753B2 (ja) 2014-09-29 2014-09-29 グラフ表示装置、方法、及びプログラム

Country Status (2)

Country Link
US (1) US9727990B2 (ja)
JP (1) JP6352753B2 (ja)

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0415839A (ja) * 1990-05-10 1992-01-21 Toshiba Corp 分散データベース管理装置
JP3472026B2 (ja) * 1996-03-26 2003-12-02 富士通株式会社 ログ情報採取解析装置
JP2000242651A (ja) * 1999-02-18 2000-09-08 Mitsubishi Electric Corp データマイニング方法およびデータマイニング装置
US7475358B2 (en) * 2006-02-14 2009-01-06 International Business Machines Corporation Alternate progress indicator displays
JP5219378B2 (ja) * 2007-01-18 2013-06-26 株式会社日立製作所 インタラクションデータ表示装置、処理装置及び表示方法
JP5245495B2 (ja) 2008-03-31 2013-07-24 大日本印刷株式会社 時系列データ用グラフ表示装置
US8983936B2 (en) * 2012-04-04 2015-03-17 Microsoft Corporation Incremental visualization for structured data in an enterprise-level data store
WO2013175608A1 (ja) * 2012-05-24 2013-11-28 株式会社日立製作所 画像解析装置、画像解析システム、画像解析方法

Also Published As

Publication number Publication date
US9727990B2 (en) 2017-08-08
JP2016071503A (ja) 2016-05-09
US20160093075A1 (en) 2016-03-31

Similar Documents

Publication Publication Date Title
US11645345B2 (en) Systems and methods for issue tracking systems
KR101283019B1 (ko) SaaS 어플리케이션 생성 방법 및 이를 실행하는 어플리케이션 생성 서버
CN109829144B (zh) 一种在线表格跨表引用方法及装置
JP7044893B2 (ja) 業務分析方法
GB2503486A (en) Managing changes to files
JP6247775B2 (ja) 時系列予測装置、及び時系列予測方法
JP2011154540A (ja) 類似度算出プログラムおよび類似度算出装置
CN108121579B (zh) 修改规则文件的方法及装置
CN109829141B (zh) 一种项目表格生成方法及装置
US20240152490A1 (en) Model object management and storage system
JP6352753B2 (ja) グラフ表示装置、方法、及びプログラム
JP7239643B2 (ja) 情報提示方法、装置、電子機器、記憶媒体及びプログラム
CN112100362B (zh) 文档格式推荐模型训练方法、装置以及电子设备
JP2012053548A (ja) 文書データ変換装置及び文書変換プログラム
US10515330B2 (en) Real time visibility of process lifecycle
US10268730B2 (en) Focus-driven user interface
WO2014192072A1 (ja) 計算機、関連性算出方法及び記憶媒体
CN112948472A (zh) 处理数据方法、装置、设备和计算机可读介质
TW201619852A (zh) 用於感知情境並推薦資訊之電子計算裝置、其方法及其電腦程式產品
JP2015082316A (ja) 収入算出装置、キャリアコンサルティングシステム、収入算出方法及びキャリアコンサルティング方法、並びに、収入算出方法のプログラム及びキャリアコンサルティング方法のプログラム、及び、それらのプログラムを記録した記録媒体
JP2012256141A (ja) 操作支援方法及び計算機
CN116361378A (zh) 一种数据可视化展示方法及装置
JP2020140587A (ja) データ処理システム
JP5673051B2 (ja) 文書特徴量算出装置、文書特徴量算出方法、及び、文書特徴量算出プログラム
CN116166694A (zh) 数据校验方法、装置、电子设备和可读存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160916

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20160916

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20160916

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170629

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170808

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170907

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180206

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180403

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180508

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180607

R151 Written notification of patent or utility model registration

Ref document number: 6352753

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151