org.opengion.hayabusa.io

## クラス ChartFactory

- java.lang.Object
- - org.opengion.hayabusa.io.ChartFactory

-     public final class ChartFactory
      extends java.lang.Object

       ChartFactory は、Dataset および、Renderer のオブジェクトを構築するファクトリクラスです。
       JFreeChart では、各種オブジェクトの組み合わせで、色々なグラフを作成できます。
       ここでは、簡易的にオブジェクトを構築できるように、一つのキーワードによって、各種作成する
       オブジェクトのキーワードを関連付けておきます。

         各種オブジェクトの組み合わせ一覧
          チャートタイプ           レンデラー(org.jfree.chart.renderer.)     Dataset
          HybsLine                 HybsLineRenderer                          Category
          LineAndShape             category.LineAndShapeRenderer             Category
          Line3D                   category.LineRenderer3D                   Category
          StatisticalLineAndShape  category.StatisticalLineAndShapeRenderer  Category
          HybsParetoLine           HybsLineRenderer                          ParetoCategory
          HybsBar                  HybsBarRenderer                           Category
          HybsColorBar             HybsBarRenderer                           Category
          Bar                      category.BarRenderer                      Category
          Bar3D                    category.BarRenderer3D                    Category
          HybsColorBar3D           HybsBarRenderer3D                         Category
          Area                     category.AreaRenderer                     Category
          HybsStackedBar           HybsStackedBarRenderer                    Category
          StackedBar               category.StackedBarRenderer               Category
          StackedBar3D             category.StackedBarRenderer3D             Category
          StackedArea              category.StackedAreaRenderer              Category
          GroupedStackedBar        category.GroupedStackedBarRenderer        Category
          LayeredBar               category.LayeredBarRenderer               Category
          CategoryStep             category.CategoryStepRenderer             Category
          Level                    category.LevelRenderer                    Category
          MinMax                   category.MinMaxCategoryRenderer           Category
          WaterfallBar             category.WaterfallBarRenderer             Category
          MultiplePie              null                                      Category
          SpiderWeb                null                                      Category
          Pie                      null                                      Pie
          Pie3D                    null                                      Pie
          Ring                     null                                      Pie
          XYArea                   xy.XYAreaRenderer                         XY
          XYArea2                  xy.XYAreaRenderer2                        XY
          XYBlock                  xy.XYBlockRenderer                        XY
          CyclicXYItem             xy.CyclicXYItemRenderer                   XY
          HighLow                  xy.HighLowRenderer                        XY
          StackedXYArea            xy.StackedXYAreaRenderer                  XY
          StackedXYArea2           xy.StackedXYAreaRenderer2                 XY
          StandardXYItem           xy.StandardXYItemRenderer                 XY
          XYBubble                 xy.XYBubbleRenderer                       XY
          XYDifference             xy.XYDifferenceRenderer                   XY
          XYDot                    xy.XYDotRenderer                          XY
          XYError                  xy.XYErrorRenderer                        XY
          XYLine3D                 xy.XYLine3DRenderer                       XY
          XYLineAndShape           xy.XYLineAndShapeRenderer                 XY
          XYStepArea               xy.XYStepAreaRenderer                     XY
          XYStep                   xy.XYStepRenderer                         XY
          PolarItem                DefaultPolarItemRenderer                  XY
          Meter                    null                                      Value
          Thermometer              null                                      Value
          Compass                  null                                      Value
          Gantt                    category.GanttRenderer                    TaskSeries
          XYBarV                   xy.XYBarRenderer                          TimeSeries
          ClusteredXYBarV          xy.ClusteredXYBarRenderer                 TimeSeries
          YIntervalV               xy.YIntervalRenderer                      TimeSeries
          DeviationV               xy.DeviationRenderer                      TimeSeries
          TimeSeriesLineV          xy.StandardXYItemRenderer                 TimeSeries
          TimeSeriesLineH          xy.StandardXYItemRenderer                 TimeSeries
          TimeSeriesBarV           xy.XYBarRenderer                          TimeSeries
          TimeSeriesBarH           xy.XYBarRenderer                          TimeSeries
          StackedTimeSeriesLineV   xy.StandardXYItemRenderer                 TimeSeries
          StackedTimeSeriesLineH   xy.StandardXYItemRenderer                 TimeSeries
          TimeStepV                xy.XYStepRenderer                         TimeSeries
          TimeStepH                xy.XYStepRenderer                         TimeSeries

  バージョン
    0.9.0 2007/06/21
  作成者
    Kazuhiko Hasegawa
  導入されたバージョン:
    JDK1.1,

- - ### メソッドのサマリー

    すべてのメソッド staticメソッド concreteメソッド
    修飾子とタイプ | メソッドと説明
    --- | ---
    `static int` | `getRowCount(org.jfree.data.general.Dataset dataset)` Datasetオブジェクトのデータ件数を返します。
    `static TypeRenderer` | `getTypeRenderer(java.lang.String type)` TypeRenderer オブジェクトを作成します。
    `static ChartPlot` | `newChartPlot(java.lang.String type)` ChartPlot オブジェクトを作成します。
    `static org.jfree.data.general.Dataset` | `newDataset(java.sql.Connection conn, java.lang.String query, java.lang.String type, java.lang.String[] lbls, boolean useCateColor)` Connection と query 文字列から、Dataset オブジェクトを作成します。
    `static org.jfree.data.general.Dataset` | `newDataset(DBTableModel table, java.lang.String type, java.lang.String[] lbls, boolean useCateColor)` DBTableModelオブジェクトから、Dataset オブジェクトを作成します。

    - ### クラスから継承されたメソッド java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### メソッドの詳細

    - #### newDataset

          public static org.jfree.data.general.Dataset newDataset(java.sql.Connection conn,
                                                                  java.lang.String query,
                                                                  java.lang.String type,
                                                                  java.lang.String[] lbls,
                                                                  boolean useCateColor)
                                                           throws java.sql.SQLException

      Connection と query 文字列から、Dataset オブジェクトを作成します。 引数のtypeは、内部定義の TYPE_RENDERER_MAP マップで関連付けられたキーワード より、対象とするチャート特性を取得します。(getTypeRenderer) その TypeRenderer#getDatasetType() メソッドの値を元に、Dataset クラスは、 "org.jfree.data.jdbc.JDBC****Dataset" の **** の箇所を特定します。 現状は、Category , ParetoCategory , Pie , XY の３種類 ＋ Valueデータセットが選択されます。
      パラメータ:
        `conn` - Dataset の取得先のコネクション
        `query` - 取得するクエリー文字列
        `type` - Dataset オブジェクトの作成元を求めるキーワード
        `lbls` - シリーズのラベル名配列
        `useCateColor` - カテゴリのカラー名指定 [false:指定しない/true:指定する]
      戻り値:
        Datasetオブジェクト
      例外:
        `java.sql.SQLException` - データベースアクセスエラー
      関連項目:
        `getTypeRenderer( String )`, `newDataset( DBTableModel ,String ,String[] ,boolean )`
      変更履歴:
        3.8.9.2 (2007/07/28) HybsJDBCCategoryDataset 追加, 5.3.0.0 (2010/12/01) その他のDataset 追加, 5.6.1.0 (2013/02/01) 時間軸を持つチャート TimeSeries 追加, 6.0.2.0 (2014/09/19) シリーズのラベル名配列追加, 6.0.2.1 (2014/09/26) パレート図用のDataset ParetoCategory 追加, 6.0.2.2 (2014/10/03) カテゴリのカラー名指定 useCategoryColor 追加

    - #### newDataset

          public static org.jfree.data.general.Dataset newDataset(DBTableModel table,
                                                                  java.lang.String type,
                                                                  java.lang.String[] lbls,
                                                                  boolean useCateColor)

      DBTableModelオブジェクトから、Dataset オブジェクトを作成します。 引数のtypeは、内部定義の TYPE_RENDERER_MAP マップで関連付けられたキーワード より、対象とするチャート特性を取得します。(getTypeRenderer) その TypeRenderer#getDatasetType() メソッドの値を元に、Dataset クラスを作成します。 現状は、Category , ParetoCategory , Pie , XY の３種類 ＋ Valueデータセットが選択されます。 ※ DBTableModel の row,col と、Dataset の row,col は、逆になっています。
      パラメータ:
        `table` - Dataset の取得先のテーブルモデル
        `type` - Dataset オブジェクトの作成元を求めるキーワード
        `lbls` - シリーズのラベル名配列
        `useCateColor` - カテゴリのカラー名指定 [false:指定しない/true:指定する]
      戻り値:
        Datasetオブジェクト
      関連項目:
        `getTypeRenderer( String )`, `newDataset( Connection ,String ,String ,String[] ,boolean )`
      変更履歴:
        5.3.0.0 (2010/12/01) 新規追加, 6.0.2.0 (2014/09/19) シリーズのラベル名配列追加, 6.0.2.1 (2014/09/26) パレート図用のDataset ParetoCategory 追加, 6.0.2.2 (2014/10/03) カテゴリのカラー名指定 useCategoryColor 追加

    - #### getRowCount

          public static int getRowCount(org.jfree.data.general.Dataset dataset)

      Datasetオブジェクトのデータ件数を返します。 org.jfree.data.general.Dataset には、共通に利用できる件数取得のメソッドが定義されていません。 なので、個々のクラスごとに、取得します。 ChartFactory に持っているのは、このクラスで、Dataset の実態を作成している関係上、 新しいクラスを追加時に、このメソッドの手直しが必要になるからです。
      パラメータ:
        `dataset` - Datasetオブジェクト
      戻り値:
        データ件数
      変更履歴:
        6.9.7.0 (2018/05/14) データ０件の対応。

    - #### getTypeRenderer

          public static TypeRenderer getTypeRenderer(java.lang.String type)

      TypeRenderer オブジェクトを作成します。 引数のtypeは、内部定義の TYPE_RENDERER_MAP マップで関連付けられたキーワード より、対象とするチャート特性を取得します。 typeは、org.jfree.chart.renderer.XXXX.YYYYRenderer のYYYY とほぼ一致します。 TYPE_RENDERER_MAP マップには、XXXX.YYYYRenderer 部分が定義されています。 XXXX は、category と xy が定義されており、それ以外のレンデラーは null に なっています。Pie 関係は、レンデラーではなく、Plot と対応します。 ただし、個々に設定情報が異なる為、ChartPlot_Pie クラスで個別対応しています。
      パラメータ:
        `type` - Rendererオブジェクトの作成元を求めるキーワード
      戻り値:
        TypeRendererオブジェクト

    - #### newChartPlot

          public static ChartPlot newChartPlot(java.lang.String type)

      ChartPlot オブジェクトを作成します。 ChartPlot オブジェクトは、ChartPlot インターフェースを継承した サブクラスで、"org.opengion.hayabusa.io.ChartPlot_**** になります。 **** には、Category , Pie , XY が指定できます。
      パラメータ:
        `type` - Rendererオブジェクトの作成元を求めるキーワード
      戻り値:
        ChartPlotオブジェクト
      変更履歴:
        4.0.0.0 (2007/11/29) ChartPlot のサブクラスを動的に作成、キャッシュします。, 5.3.0.0 (2010/12/01) xxxPlot対応, 5.6.1.0 (2013/02/01) 時間軸を持つチャート TimeSeries 追加

Webアプリケーションフレームワーク openGion
Copyright (c) 2009 The openGion Project.