特許第6828480号(P6828480)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社JVCケンウッドの特許一覧

特許6828480リスト表示装置、リスト表示方法及びリスト表示プログラム
<>
  • 特許6828480-リスト表示装置、リスト表示方法及びリスト表示プログラム 図000002
  • 特許6828480-リスト表示装置、リスト表示方法及びリスト表示プログラム 図000003
  • 特許6828480-リスト表示装置、リスト表示方法及びリスト表示プログラム 図000004
  • 特許6828480-リスト表示装置、リスト表示方法及びリスト表示プログラム 図000005
  • 特許6828480-リスト表示装置、リスト表示方法及びリスト表示プログラム 図000006
  • 特許6828480-リスト表示装置、リスト表示方法及びリスト表示プログラム 図000007
  • 特許6828480-リスト表示装置、リスト表示方法及びリスト表示プログラム 図000008
  • 特許6828480-リスト表示装置、リスト表示方法及びリスト表示プログラム 図000009
  • 特許6828480-リスト表示装置、リスト表示方法及びリスト表示プログラム 図000010
  • 特許6828480-リスト表示装置、リスト表示方法及びリスト表示プログラム 図000011
  • 特許6828480-リスト表示装置、リスト表示方法及びリスト表示プログラム 図000012
  • 特許6828480-リスト表示装置、リスト表示方法及びリスト表示プログラム 図000013
  • 特許6828480-リスト表示装置、リスト表示方法及びリスト表示プログラム 図000014
  • 特許6828480-リスト表示装置、リスト表示方法及びリスト表示プログラム 図000015
  • 特許6828480-リスト表示装置、リスト表示方法及びリスト表示プログラム 図000016
  • 特許6828480-リスト表示装置、リスト表示方法及びリスト表示プログラム 図000017
  • 特許6828480-リスト表示装置、リスト表示方法及びリスト表示プログラム 図000018
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6828480
(24)【登録日】2021年1月25日
(45)【発行日】2021年2月10日
(54)【発明の名称】リスト表示装置、リスト表示方法及びリスト表示プログラム
(51)【国際特許分類】
   G06F 3/0481 20130101AFI20210128BHJP
【FI】
   G06F3/0481
【請求項の数】7
【全頁数】19
(21)【出願番号】特願2017-20236(P2017-20236)
(22)【出願日】2017年2月7日
(65)【公開番号】特開2018-128761(P2018-128761A)
(43)【公開日】2018年8月16日
【審査請求日】2019年9月30日
(73)【特許権者】
【識別番号】308036402
【氏名又は名称】株式会社JVCケンウッド
(74)【代理人】
【識別番号】100103894
【弁理士】
【氏名又は名称】家入 健
(72)【発明者】
【氏名】笠原 力弥
【審査官】 ▲はま▼中 信行
(56)【参考文献】
【文献】 特開2007−102489(JP,A)
【文献】 特開2001−092830(JP,A)
【文献】 国際公開第2015/129327(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00 − 16/958
G06F 3/0481
(57)【特許請求の範囲】
【請求項1】
文字列を含む行を複数含むリストの中からいずれかの行である対象行を選択する行選択部と、
前記複数の行の文字列に基づいて前記リストをソートするソート部と、
前記ソートされたリストにおいて前記対象行の文字列と他の行の文字列との中から一致する文字数を類似度として算出する類似度算出部と、
前記ソートされたリストの行が並ぶ行方向において、前記対象行の前方及び後方のいずれか一方を選択する選択部と、
前記類似度に基づいて、リスト表示画面に、前記対象行を含む前記ソートされたリストの一部を表示するリスト表示部と、を備え、
前記リスト表示部は、前記対象行の前方と後方とに同じ類似度の行があり、かつ、前記同じ類似度の行の全てを前記リスト表示画面に表示できない場合に、前記選択部で選択された方向の行を優先して表示する、
リスト表示装置。
【請求項2】
文字列を含む複数の行を複数含むリストの中からいずれかの行である対象行を選択する行選択部と、
前記複数の行の文字列に基づいて前記リストをソートするソート部と、
前記ソートされたリストにおいて前記対象行の文字列と他の行の文字列との中から一致する文字数を類似度として算出する類似度算出部と、
算出された前記類似度ごとに、同じ類似度の出現頻度に応じて重み付けを行う出現頻度算出部と、
前記類似度及び前記重み付けに基づいて、リスト表示画面に、前記対象行を含む前記ソートされたリストの一部を表示するリスト表示部と、を備え、
前記出現頻度算出部は、前記ソートされたリストの行が並ぶ行方向において前記対象行の前方と後方とに分けて前記出現頻度に応じた前方重みと後方重みとを求め、
前記リスト表示部は、前記対象行の前方と後方とに同じ類似度の行があり、かつ、前記同じ類似度の行の全てを前記リスト表示画面に表示できない場合に、前記前方重みと前記後方重みとの比率に応じて、前記対象行の前方と後方とにおける前記同じ類似度の行の表示行数を決定する、
リスト表示装置。
【請求項3】
前記類似度は、前記文字列のうち先頭から連続して一致する文字数である、
請求項1または2に記載のリスト表示装置。
【請求項4】
文字列を含む行を複数含むリストの中からいずれかの行である対象行を選択し、
前記複数の行の文字列に基づいて前記リストをソートし、
前記ソートされたリストにおいて前記選択された行の文字列と他の行の文字列との中から一致する文字数を類似度として算出し、
前記ソートされたリストの行が並ぶ行方向において、前記対象行の前方及び後方のいずれか一方を選択し、
前記類似度に基づいて、リスト表示画面に、前記対象行を含む前記ソートされたリストの一部を表示し、
前記リストを表示する際、前記対象行の前方と後方とに同じ類似度の行があり、かつ、前記同じ類似度の行の全てを前記リスト表示画面に表示できない場合に、前記選択された方向の行を優先して表示する、
リスト表示方法。
【請求項5】
文字列を含む複数の行を複数含むリストの中からいずれかの行である対象行を選択し、
前記複数の行の文字列に基づいて前記リストをソートし、
前記ソートされたリストにおいて前記対象行の文字列と他の行の文字列との中から一致する文字数を類似度として算出し、
算出された前記類似度ごとに、同じ類似度の出現頻度に応じて重み付けを行い、
前記類似度及び前記重み付けに基づいて、リスト表示画面に、前記対象行を含む前記ソートされたリストの一部を表示し、
前記重み付けを行う際、前記ソートされたリストの行が並ぶ行方向において前記対象行の前方と後方とに分けて前記出現頻度に応じた前方重みと後方重みとを求め、
前記リストを表示する際、前記対象行の前方と後方とに同じ類似度の行があり、かつ、前記同じ類似度の行の全てを前記リスト表示画面に表示できない場合に、前記前方重みと前記後方重みとの比率に応じて、前記対象行の前方と後方とにおける前記同じ類似度の行の表示行数を決定する、
リスト表示方法。
【請求項6】
文字列を含む行を複数含むリストの中からいずれかの行である対象行を選択し、
前記複数の行の文字列に基づいて前記リストをソートし、
前記ソートされたリストにおいて前記選択された行の文字列と他の行の文字列との中から一致する文字数を類似度として算出し、
前記ソートされたリストの行が並ぶ行方向において、前記対象行の前方及び後方のいずれか一方を選択し、
前記類似度に基づいて、リスト表示画面に、前記対象行を含む前記ソートされたリストの一部を表示し、
前記リストを表示する際、前記対象行の前方と後方とに同じ類似度の行があり、かつ、前記同じ類似度の行の全てを前記リスト表示画面に表示できない場合に、前記選択された方向の行を優先して表示する、
処理をコンピュータに実行させるためのリスト表示プログラム。
【請求項7】
文字列を含む複数の行を複数含むリストの中からいずれかの行である対象行を選択し、
前記複数の行の文字列に基づいて前記リストをソートし、
前記ソートされたリストにおいて前記対象行の文字列と他の行の文字列との中から一致する文字数を類似度として算出し、
算出された前記類似度ごとに、同じ類似度の出現頻度に応じて重み付けを行い、
前記類似度及び前記重み付けに基づいて、リスト表示画面に、前記対象行を含む前記ソートされたリストの一部を表示し、
前記重み付けを行う際、前記ソートされたリストの行が並ぶ行方向において前記対象行の前方と後方とに分けて前記出現頻度に応じた前方重みと後方重みとを求め、
前記リストを表示する際、前記対象行の前方と後方とに同じ類似度の行があり、かつ、前記同じ類似度の行の全てを前記リスト表示画面に表示できない場合に、前記前方重みと前記後方重みとの比率に応じて、前記対象行の前方と後方とにおける前記同じ類似度の行の表示行数を決定する、
処理をコンピュータに実行させるためのリスト表示プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、リスト表示装置、リスト表示方法及びリスト表示プログラムに関し、特に、複数の行を含むリストを表示するリスト表示装置、リスト表示方法及びリスト表示プログラムに関する。
【背景技術】
【0002】
現在普及している米マイクロソフト社のウィンドウズ(登録商標)が搭載されたパソコンなどで採用されているように、アプリケーション・ソフトウエアのユーザインタフェースとしてGUI(Graphical User Interface)が広く利用されている。このようなGUIでは、ウィンドウ画面内に複数の行を含むリストを表形式で表示することができる。そして、表示されたリストの中から所望のデータを見つけ出すために、ユーザがGUIを操作可能となっている。
【0003】
例えば、表示されたリストの列ヘッダ(項目名もしくはデータ名)をクリックすることでリストの内容をソートする方法が一般的である。また、表示されるリストの行は複数の列(項目もしくはデータ)により構成されることが多く、クリックする列ヘッダを複数選択することで複数のソート条件によるソートも可能である。
【0004】
関連する技術として、例えば特許文献1が知られている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2015−201037号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
関連する技術では、上記のように、ウィンドウ画面にリストを表示し、ユーザの操作に応じてソートすることができる。しかし、リストが多数の行で構成されていた場合、ウィンドウ画面に全ての行を表示させることができない。このため、ウィンドウ画面にはリストの一部の行のみを表示し、ユーザがスクロールバーを操作することでリストの行の表示位置を変更する方法が取られている。そうすると、ユーザがソートされた大量のリストの中から所望のデータを見つけ出すためには、スクロールバーを操作しながらデータを一つ一つ確認しなければならない。
【0007】
したがって、関連する技術では、表示されたリストの中から所望のデータを把握することが困難であり、視認性が悪いという問題がある。
【課題を解決するための手段】
【0008】
そこで、一実施の形態では、複数の行を含むリストの中からいずれかの行である対象行を選択する行選択部と、前記対象行のデータと他の行のデータとの類似度を算出する類似度算出部と、前記類似度に基づいて、リスト表示画面に前記リストを表示するリスト表示部と、を備える、リスト表示装置を提供する。
【0009】
また、一実施の形態では、複数の行を含むリストの中からいずれかの行である対象行を選択し、前記選択された行のデータと他の行のデータとの類似度を算出し、前記類似度に基づいて、リスト表示画面に前記リストを表示する、リスト表示方法を提供する。
【0010】
さらに、一実施の形態では、複数の行を含むリストの中からいずれかの行である対象行を選択し、前記選択された行のデータと他の行のデータとの類似度を算出し、前記類似度に基づいて、リスト表示画面に前記リストを表示する、処理をコンピュータに実行させるためのリスト表示プログラムを提供する。
【発明の効果】
【0011】
一実施の形態によれば、視認性を向上することが可能なリスト表示装置、リスト表示方法及びリスト表示プログラムを提供することができる。
【図面の簡単な説明】
【0012】
図1】実施の形態1に係るリスト表示装置の構成を示す構成図である。
図2】参考例のリスト表示方法を示すフローチャートである。
図3】実施の形態1に係るリスト表示方法を示すフローチャートである。
図4】実施の形態1に係るリスト表示画面の例を示す図である。
図5】実施の形態1に係るリスト表示画面に表示するリストの例を示す図である。
図6】実施の形態1に係るリスト表示画面の例を示す図である。
図7】実施の形態1に係るリスト表示画面に表示するリストの例を示す図である。
図8】実施の形態1に係るリスト表示方法を説明するための図である。
図9】実施の形態1に係るリスト表示方法を説明するための図である。
図10A】実施の形態2に係るリスト表示方法を示すフローチャートである。
図10B】実施の形態2に係るリスト表示方法を示すフローチャートである。
図11】実施の形態2に係るリスト表示方法で表示する具体例1を示す図である。
図12】実施の形態2に係るリスト表示方法で表示する具体例2を示す図である。
図13】実施の形態2に係るリスト表示方法で表示する具体例3を示す図である。
図14】実施の形態2に係るリスト表示方法で表示する具体例4を示す図である。
図15】実施の形態2に係るリスト表示方法で表示する具体例5を示す図である。
図16】実施の形態2に係るリスト表示方法で表示する具体例6を示す図である。
【発明を実施するための形態】
【0013】
(実施の形態1)
以下、図面を参照して実施の形態1について説明する。
【0014】
<実施の形態1のリスト表示装置の構成>
図1は、本実施の形態に係るリスト表示装置の構成を示している。本実施の形態に係るリスト表示装置10は、アプリケーション・ソフトウエアのGUIにリストを表示する装置であり、例えば、ウィンドウズなどを搭載したコンピュータ装置で構成される。
【0015】
図1に示すように、本実施の形態に係るリスト表示装置10は、入力部11、表示部12、記憶部13、制御部14を備えている。入力部11は、ユーザが入力操作を行うための入力装置であり、例えば、マウスやキーボード等で構成される。
【0016】
表示部12は、リストを含むリスト表示画面110などのGUIを表示する表示装置であり、例えば、液晶ディスプレイ等で構成される。記憶部13は、リスト表示プログラムやリストデータなど制御部14の動作に必要なプログラムや各種のデータを記憶する記憶装置であり、例えば、ハードディスクやメモリ等で構成される。
【0017】
制御部14は、リスト表示装置10の動作を制御する制御部であり、記憶部13のプログラム及びデータや入力部11の入力操作に応じて表示部12にリスト表示画面110を表示する。例えば、制御部14は、プログラムを実行可能なCPU(Central Processing Unit)等で構成される。
【0018】
制御部14は、リスト表示装置10の主要な機能を実現するため、リスト表示部101、行選択部102、ソート部103、類似度算出部104、出現頻度算出部105を備えている。これらの各部の機能は、制御部14が記憶部13に記憶されたリスト表示プログラムを実行することで実現されている。なお、後述の本実施の形態に係るリスト表示方法が実現できれば、その他の構成であってもよい。
【0019】
リスト表示部101は、記憶部13に記憶された複数の行を含むリストを、表示部12のリスト表示画面110に表示する。行選択部102は、ユーザの操作に応じて、リスト表示画面110に表示されたリスト内のいずれかの行である対象行を選択する。ソート部103は、ユーザの選択した項目(行のデータ)に基づいて、リスト表示画面110のリストをソートする。
【0020】
類似度算出部104は、リスト表示画面110において選択された対象行のデータと他の行のデータとの類似度を算出する。出現頻度算出部105は、算出された類似度ごとに、同じ類似度の行が出現する出現頻度を算出する。また、出現頻度算出部105は、同じ類似度の行の出現頻度に応じて、出現頻度が多い類似度の行を出現頻度が少ない行よりも重い重み付けを行う重み付け部でもある。そして、リスト表示部101は、算出された類似度と重み付けに基づいて、リスト表示画面110にリストを表示する。すなわち、リスト表示部101は、類似度が高い行を、類似度が低い行よりも優先的に表示する。さらに、リスト表示部101は、重い重み付けの類似度の行を、優先的に表示してもよい。また、リスト表示部101は、ユーザの指定にしたがい、対象行の前方または後方の類似度が高い行を優先的に表示してもよい。なお、ここでは、リストをソートした後に類似度や重み付けを求めて表示を行うが、リストのソートを行わずに、類似度や重み付けを求めて表示を行ってもよい。
【0021】
<参考例のリスト表示方法>
ここで、本実施の形態の理解を深めるため、図2のフローチャートを用いて、本実施の形態の参考となる参考例のリスト表示方法について説明する。
【0022】
図2に示すように、参考例のリスト表示方法では、まず、リスト表示装置10は、リスト表示画面110を表示し(S101)、そのリスト表示画面110にリストを表示する(S102)。表示されたリスト表示画面110に対するユーザの操作によって、リストの中の特定の対象行が選択され(S103)、ソートする項目が選択される(S104)。
【0023】
リスト表示装置10は、選択された項目でリストのソートを実行する(S105)。このとき、表示したリスト表示画面110に、ユーザが選択していた対象行が表示されていれば(S106のYes)、処理を終了する。また、リスト表示画面110に対象行が表示されていない場合(S106のNo)、ユーザのスクロール操作に応じてリスト表示のスクロールが実行され(S107)、対象行が表示されるまで繰り返される。
【0024】
このように、参考例では、リスト表示画面110においてユーザが行を選択しソートした結果、リスト表示画面110に選択された対象行が表示されていない場合、ユーザのスクロール操作が必要となる。このため、リストのどこに対象行や、対象行のデータに近い行があるのか簡単に把握することができない。したがって、参考例では、視認性が悪く、また、データの検索が困難であるという問題がある。
【0025】
そこで、本実施の形態では、リストのソート結果をユーザにとって分かり易く表示することで、視認性や検索性を高めることを可能とする。
【0026】
なお、特許文献1の方法では類似度の変化点を表示の区切りとしているが、類似度の頻度分布が考慮されておらず、対象物前後の表示バランスを調整することができない。
【0027】
<実施の形態1のリスト表示方法>
次に、図4図9に示す表示例を参照しつつ、図3のフローチャートを用いて、本実施の形態に係るリスト表示方法について説明する。なお、各図において、同じ部品には同一の符号が付されている。
【0028】
図3に示すように、本実施の形態に係るリスト表示方法では、まず、リスト表示部101は、表示部12にリスト表示画面110を表示する(S201)。図4は、このとき表示するリスト表示画面110の一例を示している。
【0029】
図4に示すように、リスト表示画面110は、リストの列の属性を示す列ヘッダA01、リストの情報を表示するリスト表示領域A02、リスト表示領域A02に表示されていないリストを表示するためのスクロールバーA03を備えている。例えば、表示するリストには、ユーザが使用する製品のモデル名と対応する日付が含まれており、このリストの中からユーザが該当するモデル名及び日付を含む行を検索する。
【0030】
さらに、リスト表示画面110は、本実施の形態の特徴として、類似度表示チェックボックスA04、出現頻度選択ボタンA05を備えている。例えば、類似度算出部104が、類似度表示チェックボックスA04のチェックに応じてリストの各行の類似度を算出し、出現頻度算出部105が、出現頻度選択ボタンA05で指定された出現頻度を算出し、リスト表示部101が、類似度及び出現頻度に基づいてリスト表示領域A02にリストを表示する。
【0031】
類似度表示チェックボックスA04は、類似度を用いた表示への切り替えを指定するためのチェックボックスである。チェックボックス“Similarity”に、チェックを入れることで類似度の高い行を基準にして、表示する行の位置を移動する。また、類似度ごとに色分けすることで、表示が分かりやすくなり視認性が向上する。
【0032】
出現頻度選択ボタンA05は、出現頻度を用いた表示方法を選択するためのラジオボタンである。ボタン“Forward”は、対象行の前方の行を後方の行よりも優先させて表示し、ボタン“Backward”は、対象行の後方の行を前方の行よりも優先させて表示するためのボタンである。前方は、リストの行が並ぶ行方向における前側であり、後方は、行方向における後側である。出現頻度選択ボタンA05により、類似度の高い行と対象行を基準として、前方又は後方に表示する優先順位を決めることができる。また、この場合でも類似度ごとに色分けすることで、表示が分かりやすくなり視認性が向上する。
【0033】
なお、本実施の形態では、簡単のため1つの列ヘッダによるソートの例を示すが、複数の列ヘッダの組み合わせによるソート条件においても同様に本実施の形態によるリスト表示方法を採用できることは容易に分かる。例えば、第一ソート条件を“日付”としてソートを行い、同じ日付のリストが存在する場合には、第二ソート条件を“モデル名”として同じ日付のリスト部分をモデル名順に並べてもよい。
【0034】
続いて、リスト表示部101は、リスト表示画面110にリストを表示する(S202)。図5は、リスト表示画面110のリスト表示領域A02に表示するためのリスト全体の情報の一例を示している。
【0035】
図5の例では、リストL01は20行のデータで構成されており、各行が列ヘッダA01の“No”列の数字の昇順に並んでいる。そして、このリストL01の内の10行(例えば1行目から10行目まで)を、リスト表示画面110のリスト表示領域A02に表示する。
【0036】
ここで、ユーザがリストL01から目的とする“モデル名”の行を対象行として探しだし、対象行に類似した“モデル名”のリストの情報を得る操作を行う場合を考える。まず、ユーザは現在リスト表示領域A02に表示されているリストに対象行が見当たらない場合には、スクロールバーA03を操作して表示されていない行を表示させる。そして、行選択部102は、ユーザの操作に応じて、表示されたリストの中の特定の対象行を選択する(S203)。図6は、このときの表示例を示している。
【0037】
例えば、図6に示すように、スクロールバーA03をユーザが操作することにより、リストL01のうちの“No”列が11〜20の行を表示するようにスクロールする。このとき、“No=20”の“モデル名=CA-01-A”が対象行として発見されたとすると、ユーザは、マウスを操作し、発見した対象行をマウスポインタD01でクリックする。そのクリック操作に応じて、行選択部102が対象行を選択し、対象行の背景色を反転表示させる。
【0038】
続いて、ソート部103は、ユーザの操作に応じてソートする項目を選択し(S204)、選択された項目でリストのソートを実行する(S205)。図6のようにユーザが対象行を選択した後、列ヘッダA01のいずれかの項目を選択する。
【0039】
例えば、ユーザは対象行に類似した“モデル名”のリストを得るために列ヘッダA01の“モデル名”部分をマウスポインタD01でクリックする。この操作に応じて、ソート部103がソートを実行し、“モデル名”でソートしたリストを得る。または、対象行の背景色を反転させる選択動作時に、“モデル名”部分をクリックすることで、対象行の選択と“モデル名”によるソートを同時に行える方式としてもよい。さらに、ソート順は列ヘッダA01をクリックする度に昇順と降順をトグル表示してもよい。図7は、図5のリストL01を“モデル名”で昇順にソートした結果を示している。リスト表示画面110のリスト表示領域A02にソート後のリストL01の内の10行(例えば1行目から10行目まで)を表示してもよい。
【0040】
続いて、類似度算出部104は、類似度を用いた表示が指定されたか否か判定する(S206)。類似度表示チェックボックスA04で類似度を用いた表示(“Similarity”)が指定されない場合は処理を終了し、ユーザの操作によって類似度を用いた表示が指定された場合、類似度算出部104は、表示されているリストの各行の類似度を算出する(S207)。さらに、出現頻度算出部105は、前方頻度または後方頻度が指定されたか否か判定する(S208)。
【0041】
出現頻度選択ボタンA05で前方頻度(“Forward”)または後方頻度(“Backward”)が指定されていない場合、リスト表示部101は、算出された類似度ごとに色分けしたリストをリスト表示領域A02に表示する(S209)。例えば、行の情報の先頭から連続して一致する文字数を類似度とし、ソート後に対象行と連なる前後の行の情報の類似度に応じて、対象行の情報の表示位置を自動的に調整する。
【0042】
一例として、ある文字列リストL01のソート結果を図8(a)に示す。ここで、対象行に「AAAD2」の文字列があったとするとき、対象行と各行の類似度を以下の(式1)で定義される式で求める。なお、類似度は、行の先頭に限らず、行の末尾など任意の位置において一致する文字数でもよい。また、類似度は、対象行に含まれる一部のデータにおいて一致する文字数でもよい。
類似度=対象行の文字列の先頭から連続して一致している文字数 ・・・(式1)
【0043】
例えば、リスト表示画面110のリスト表示領域A02に表示可能な行数が10行であったとして、対象行と同じ類似度を持つ行が10行以上ある場合には、対象行をリスト表示領域A02の中心位置に表示する。また、対象行と同じ類似度を持つ行が10行未満の場合には、対象行と同じ類似度を持つ行を全て表示すると共に、対象行の前後に位置し対象行と近い類似度を持つ行がより多く表示されるように、対象行の表示位置を決定する。
【0044】
図8(a)のように上記(式1)で求めた類似度を元に対象行の表示位置を調節し、図8(b)のように類似度の高い行を多く表示する。この場合、類似度4が4行、類似度3が7行、類似度2が3行、類似度0が2行である。リスト表示領域A02が10行であるため、対象行を含む類似度4の行は全て表示可能となり、次に類似度の高い類似度3の行の中から6行追加表示させることで調節し、視認性と検索性の高いソート結果とする。
【0045】
この例では、類似度4の行の前方にしか類似度3の行が存在しないが、仮に類似度4の前後に類似度3の行が存在する場合には、類似度4の行を全て表示した上で、類似度3の行が全て表示されるように対象行の位置を調整する。さらに、リスト表示領域A02に類似度3の行が全て表示できない場合には、類似度4の前後に類似度3の行が同数表示されるように調整する。類似度3の行を全て表示してもリスト表示領域A02に空きがある場合には、同様の方法で類似度2の行を表示するようにして表示位置を決定する。さらに、類似度ごとに各行を色分けして表示することで視認性と検索性を高めることができる。
【0046】
一方、出現頻度選択ボタンA05で前方頻度(“Forward”)または後方頻度(“Backward”)が指定された場合、出現頻度算出部105は、前方及び後方の出現頻度を算出し(S210)、リスト表示部101は、算出された前方及び後方の出現頻度を使って色分けしたリストをリスト表示領域A02に表示する(S211)。例えば、同じ類似度を持つ情報の数を出現頻度とし、ソート後に対象行の情報よりも前に存在する出現頻度を前方頻度、後に存在する出現頻度を後方頻度として、類似度と前方頻度及び後方頻度の比率に応じて、対象行の情報の表示位置を自動的に調整する。
【0047】
一例として、ある文字列リストL01のソート結果を図9(a)に示す。ここでは、図8の例とは異なり、対象行に対して同じ類似度となる行が対象行の前後に多数あった場合のソート結果を用いて説明する。ここでは、出現頻度を以下の(式2)により求める。
出現頻度=同じ類似度を持つ行の行数 ・・・(式2)
【0048】
図9(a)の例では、対象行よりも前方の類似度3の出現頻度は7であり、後方の類似度3の出現頻度は5である。前方頻度が指定された場合、図9(b)に示すように、対象行から前方にある類似度の高い行を優先して表示する。類似度4の行と前方の類似度3の行を全て表示した上で、後方の類似度3の行を1行表示している。また、後方頻度が指定された場合、図9(c)に示すように、対象行から後方にある類似度の高い行を優先して表示する。類似度4の行と後方の類似度3の行を全て表示した上で、前方の類似度3の行を3行表示している。また、この場合でも類似度ごとに各行を色分けして表示することで視認性と検索性を高めることができる。なお、同じ類似度の行の中でリスト表示領域A02に表示できなかった行が分かるように表示してもよい。例えば、表示できない行の行数を表示してもよい。
【0049】
<実施の形態1の効果>
以上のように、本実施の形態では、リストを画面に表示するリスト表示装置において、ユーザの操作に応じて対象行を選択しソートを実行した後、対象行と類似度が高い行を優先的に表示し、さらに、対象行の前方または後方で出現頻度の高い行を優先的に表示するようにした。これにより、ソート後に対象行を見失うことなく、対象行とその対象行に類似する行とを多く表示することが可能となる。
【0050】
本実施の形態では、ユーザが選択する対象物は、ソート後にユーザによる表示方法を指定することができるため、ソートに対する結果を容易に確認できるようになり、また、ユーザが表示バランスを考慮して位置を微調整する必要がない。特に膨大なデータリストを扱った場合に得られる効果が大きい。
【0051】
また、ソートにより対象物を見失う事を防止するのみではなく、本実施の形態によりソート結果の視認性や検索性を高める効果がある。さらに、予測が困難なソート結果から表示位置を決定しているため、類似情報をより多く表示することが可能であり同じ情報またはそれに類似した情報を発見し易くなる効果がある。
【0052】
(実施の形態2)
以下、図面を参照して実施の形態2について説明する。実施の形態1では図6の出現頻度選択ボタンA05によりユーザが前方と後方の重み付けの扱いを指定する手段を採用したが、実施の形態2では前方と後方の出現頻度の分布から自動的にリストの表示位置を決定する手段を提供する。実施の形態2では図6の出現頻度選択ボタンA05が不要となる構成を取るが、得られる効果については実施の形態1と同様である。
【0053】
図10A及び図10Bのフローチャートは、図3におけるリスト表示方法の詳細な例を示している。
【0054】
まず、図3のS201〜S205に対応して、リスト表示画面110のリスト表示領域A02にリストを表示し、ユーザの操作に応じて、リストの中の対象行にマークを付け(S301)、選択されたソート条件に従ってソートを実行する(S302)。
【0055】
以降、図3のS206〜S211に対応して、各行の類似度及び出現頻度に基づいてリスト表示領域A02にリストを表示する。
【0056】
まず、リスト表示部101は、リスト表示領域A02の行数(Ws)とリストの行数(La)を設定して(S303)、両者を比較し(S304)、リストの行数(La)がリスト表示領域A02の行数(Ws)以下の場合、リスト表示領域A02にリストを全て表示し(S305)、処理を終了する。
【0057】
また、リストの行数(La)がリスト表示領域A02の行数(Ws)よりも大きい場合、類似度算出部104は、対象行と各行との類似度Smを算出する(S306)。上記(式1)のように、対象行と各行の文字列を比較し、先頭から一致している文字数を求める。
【0058】
続いて、出現頻度算出部105は、対象行に対する前方頻度(Fr(Sm,Before))と後方頻度(Fr(Sm,After))を算出する(S307)。上記(式2)のように、前方頻度として対象行よりも前方で同じ類似度の行の数を求め、後方頻度として対象行よりも後方で同じ類似度の行の数を求める。
【0059】
続いて、リスト表示領域A02に表示するリストを決定するため、リスト表示部101は、参照する参照類似度(Sm)に対象行の類似度を設定し、表示する行のために求める行数(Ls)を対象行の行数である1に初期設定する(S308)。そして、求める行数(Ls)に参照類似度(Sm)の前方頻度(Fr(Sm,Before))と後方頻度(Fr(Sm,After)を加算し(S309)、求める行数(Ls)とリスト表示領域A02の行数(Ws)を比較する(S310)。
【0060】
求める行数(Ls)がリスト表示領域A02の行数(Ws)以下の場合、参照類似度をデクリメントして(S311)、参照類似度の前方頻度と後方頻度を加える処理(S309)を繰返し、リスト表示領域A02に全て表示できる類似度を持つリストの範囲を求める。次いで、リストの一部のみしかリスト表示領域A02に表示できない前方側の類似度の行の位置、すなわち表示開始行(Tp)を決定するステップへと進む。求める行数(Ls)がリスト表示領域A02の行数(Ws)より大きい場合、求める行数(Ls)から最後(現在)の参照類似度の前方頻度と後方頻度を減算し、リスト表示領域A02の行数(Ws)から求める行数(Ls)を減算して空きの行数(Lr)を求め、最後の参照類似度の前方頻度及び後方頻度の合計の行数(Ldn)を求める(S312)。これらの値から表示するリストの行を求める(S313)。具体的には、参照類似度の前方頻度に(1−空きの行数(Lr)/前方頻度と後方頻度の合計の行数(Ldn))を乗算し、その結果を四捨五入後に1を加算して、表示開始行(Tp)を求める。
【0061】
そして、前方類似度(Sm)を持つ行の先頭からTp番目の行をリスト表示領域A02の最上位行にしてリストを表示する(S314)。但し、前方類似度(Sm)を持つ行が無い場合には、類似度(Sm)に最も近く、且つ高位の前方類似度を持つ行の先頭を表示の最上位行にする。
【0062】
以下、図11図16を用いて、図10A及び図10Bの具体例について説明する。
【0063】
<具体例1>
図11は、具体例1におけるリストと表示例を示している。具体例1は、同じ類似度の行で表示領域が満たされる例である。
【0064】
図11に示すように、リスト表示領域A02の行数(Ws)=10、リストの行数(La)=15として、リストの“12345H”の行を対象行とする。そうすると、図10BのS307により、類似度6の前方・後方頻度=0、類似度5の前方頻度=7、類似度5の後方頻度=2、類似度4の前方頻度=3、類似度4の後方頻度=2となる。
【0065】
図10BのS309〜S311のループにより、参照類似度(Sm)と求める行数(Ls)が(Sm=6,Ls=1)、(Sm=5,Ls=10)、(Sm=4,Ls=15)と繰り返される。
【0066】
ループの後、図10BのS313及びS314により、求める行数(Ls)、空きの行数(Lr)、最後の前方頻度及び後方頻度の行数(Ldn)は、(Ls=10,Lr=0,Ldn=5)となり、これらの値から表示開始行(Tp=4)となる。
【0067】
したがって、リスト表示領域A02に、Tp=4の“12345A”の行から“12345J”の行までの10行を表示する。これにより、リスト表示領域A02には、対象行、前方の類似度5の7行、後方の類似度5の2行が表示される。
【0068】
<具体例2>
図12は、具体例2におけるリストと表示例を示している。具体例2は、同じ類似度の行で表示領域が満たされ、後方の頻度が多くなったことが対象行の位置に反映される例である。
【0069】
図12に示すように、リスト表示領域A02の行数(Ws)=10、リストの行数(La)=17として、リストの“12345H”の行を対象行とする。そうすると、図10BのS307により、類似度6の前方・後方頻度=0、類似度5の前方頻度=7、類似度5の後方頻度=4、類似度4の前方頻度=3、類似度4の後方頻度=2となる。
【0070】
図10BのS309〜S311のループにより、参照類似度(Sm)と求める行数(Ls)が(Sm=6,Ls=1)、(Sm=5,Ls=12)と繰り返される。
【0071】
ループの後、図10BのS313及びS314により、求める行数(Ls)、空きの行数(Lr)、最後の前方頻度及び後方頻度の行数(Ldn)は、(Ls=1,Lr=9,Ldn=11)となり、これらの値から表示開始行(Tp=2)となる。
【0072】
したがって、リスト表示領域A02に、Tp=2の“12345B”の行から“12345K”の行までの10行を表示する。これにより、リスト表示領域A02には、対象行、前方の類似度5の6行、後方の類似度5の3行が表示される。
【0073】
<具体例3>
図13は、具体例3におけるリストと表示例を示している。具体例3は、異なる類似度の行を表示領域に表示する例である。
【0074】
図13に示すように、リスト表示領域A02の行数(Ws)=10、リストの行数(La)=17として、リストの“12345D”の行を対象行とする。そうすると、図10BのS307により、類似度6の前方・後方頻度=0、類似度5の前方頻度=3、類似度5の後方頻度=1、類似度4の前方頻度=5、類似度4の後方頻度=2、類似度3の前方頻度=3、類似度3の後方頻度=1、類似度2の後方頻度=1となる。
【0075】
図10BのS309〜S311のループにより、参照類似度(Sm)と求める行数(Ls)が(Sm=6,Ls=1)、(Sm=5,Ls=5)、(Sm=4,Ls=12)と繰り返される。
【0076】
ループの後、図10BのS313及びS314により、求める行数(Ls)、空きの行数(Lr)、最後の前方頻度及び後方頻度の行数(Ldn)は、(Ls=5,Lr=5,Ldn=7)となり、これらの値から表示開始行(Tp=2)となる。
【0077】
したがって、リスト表示領域A02に、Tp=2の“12343B”の行から“12346A”の行までの10行を表示する。これにより、リスト表示領域A02には、対象行、前方の類似度5の3行、前方の類似度4の4行、後方の類似度5の1行、後方の類似度4の1行が表示される。
【0078】
<具体例4>
図14は、具体例4におけるリストと表示例を示している。具体例4は、異なる類似度の行を表示領域に表示し、最上位(トップ)と最下位(ボトム)の類似度が異なる例である。
【0079】
図14に示すように、リスト表示領域A02の行数(Ws)=10、リストの行数(La)=17として、リストの“12345D”の行を対象行とする。そうすると、図10BのS307により、類似度6の前方・後方頻度=0、類似度5の前方頻度=3、類似度4の前方頻度=3、類似度4の後方頻度=1、類似度3の前方頻度=5、類似度2の後方頻度=4なる。
【0080】
図10BのS309〜S311のループにより、参照類似度(Sm)と求める行数(Ls)が(Sm=6,Ls=1)、(Sm=5,Ls=4)、(Sm=4,Ls=8)、(Sm=3,Ls=13)と繰り返される。
【0081】
ループの後、図10BのS313及びS314により、求める行数(Ls)、空きの行数(Lr)、最後の前方頻度及び後方頻度の行数(Ldn)は、(Ls=8,Lr=2,Ldn=5)となり、これらの値から表示開始行(Tp=4)となる。
【0082】
したがって、リスト表示領域A02に、Tp=4の“12334A”の行から“12346A”の行までの10行を表示する。これにより、リスト表示領域A02には、対象行、前方の類似度5の3行、前方の類似度4の3行、前方の類似度3の2行、後方の類似度4の1行が表示される。
【0083】
<具体例5>
図15は、具体例5におけるリストと表示例を示している。具体例5は、対象行と同じ行が存在し、図10BのS314において表示すべき前方類似度を持つ行が無い場合の例である。
【0084】
図15に示すように、リスト表示領域A02の行数(Ws)=10、リストの行数(La)=17として、リストの“12343A”(2行目)の行を対象行とする。そうすると、図10BのS307により、類似度6の後方頻度=0、類似度6の前方頻度=1、類似度5の後方頻度=1、類似度4の後方頻度=6、類似度3の後方頻度=4、類似度2の前方頻度=4なる。
【0085】
図10BのS309〜S311のループにより、参照類似度(Sm)と求める行数(Ls)が(Sm=6,Ls=2)、(Sm=5,Ls=3)、(Sm=4,Ls=9)、(Sm=3,Ls=13)と繰り返される。
【0086】
ループの後、図10BのS313及びS314により、求める行数(Ls)、空きの行数(Lr)、最後の前方頻度及び後方頻度の行数(Ldn)は、(Ls=9,Lr=1,Ldn=4)となり、これらの値から表示開始行(Tp=1)となる。
【0087】
前方類似度3の行が無いため、リスト表示領域A02に、類似度6のTp=1の“12343A”の先頭の行から“12355A”の行までの10行を表示する。これにより、リスト表示領域A02には、対象行、前方の類似度6の1行、後方の類似度5の1行、後方の類似度4の6行、後方の類似度3の1行が表示される。
【0088】
<具体例6>
図16は、具体例6におけるリストと表示例を示している。具体例6は、対象行と同じ行だけで表示領域が満たされ、図10BのS314において表示すべき前方類似度を持つ行が無い場合の例である。
【0089】
図16に示すように、リスト表示領域A02の行数(Ws)=10、リストの行数(La)=17として、リストの“12343A”(1行目)の行を対象行とする。そうすると、図10BのS307により、類似度6の前方頻度=0、類似度6の後方頻度=9、類似度3の後方頻度=2、類似度2の前方頻度=5なる。
【0090】
図10BのS309〜S311のループにより、参照類似度(Sm)と求める行数(Ls)が(Sm=6,Ls=10)、(Sm=5,Ls=10)、(Sm=4,Ls=10)、(Sm=3,Ls=12)と繰り返される。
【0091】
ループの後、図10BのS313及びS314により、求める行数(Ls)、空きの行数(Lr)、最後の前方頻度及び後方頻度の行数(Ldn)は、(Ls=10,Lr=0,Ldn=2)となり、これらの値から表示開始行(Tp=1)となる。
【0092】
前方類似度3の行が無いため、リスト表示領域A02に、類似度6のTp=1の“12343A”(1行目)の先頭の行から“12343A”(10行目)の行までの10行を表示する。これにより、リスト表示領域A02には、対象行、後方の類似度6の9行が表示される。
【0093】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
【0094】
上述の実施形態における装置は、ハードウェア又はソフトウェア、もしくはその両方によって構成され、1つのハードウェア又はソフトウェアから構成してもよいし、複数のハードウェア又はソフトウェアから構成してもよい。リスト表示装置の各機能(各処理)を、CPUやメモリ等を有するコンピュータにより実現してもよい。例えば、記憶装置に実施形態におけるリスト表示方法を行うためのプログラムを格納し、各機能を、記憶装置に格納されたプログラムをCPUで実行することにより実現してもよい。
【0095】
このプログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD−ROM(Read Only Memory)、CD−R、CD−R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(Random Access Memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【符号の説明】
【0096】
10 リスト表示装置
11 入力部
12 表示部
13 記憶部
14 制御部
101 リスト表示部
102 行選択部
103 ソート部
104 類似度算出部
105 出現頻度算出部
110 リスト表示画面
A01 列ヘッダ
A02 リスト表示領域
A03 スクロールバー
A04 類似度表示チェックボックス
A05 出現頻度選択ボタン
D01 マウスポインタ
L01 リスト
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10A
図10B
図11
図12
図13
図14
図15
図16