Top > OOoBasic > Calc > chart2 > DataProvider

* データ プロバイダ [#g658a2fc]
データ シークエンスやデータ ソースなどを作成してくれるデータ プロバイダ。
* データプロバイダ [#g658a2fc]
データシークエンスやデータソースなどを作成してくれるデータプロバイダ。

#contents
** データ プロバイダ [#g22d0199]

** データプロバイダ [#g22d0199]
&idlref(com.sun.star.chart2.data.DataProvider); サービス。主要なインターフェースは &idlref(com.sun.star.chart2.data.XDataProvider); インターフェース。

普通はチャート オブジェクトから取得します。&idlref(.chart.XChartDocument); のメソッドを使用します。
普通はチャートオブジェクトから取得します。&idlref(.chart.XChartDocument); のメソッドを使用します。

#code(ob){{
Sub dataprovider_1
  oCharts = ThisComponent.getSheets().getByIndex(0).getCharts()
  oChart = oCharts.getByIndex(0).getEmbeddedObject()
  
  If oChart.hasInternalDataProvider() Then
    oDataProvider = oChart.getDataProvider()
  Else
    oDataProvider = oChart.createInternalDataProvider(False)
  End If
End Sub
}}
** データ シークエンスの作成 [#vb3af51e]
データ シークエンスについては[[データ シークエンス>../DataSequence]]参照。

作成したいデータ範囲を文字列で与えてデータ シークエンスを作成します。createDataSequenceByRangeRepresentation メソッドを使用します。
** データシークエンスの作成 [#vb3af51e]
データシークエンスについては[[データシークエンス>../DataSequence]]参照。

作成したいデータ範囲を文字列で与えてデータシークエンスを作成します。createDataSequenceByRangeRepresentation メソッドを使用します。
#code(ob){{
  sDataRange = "Sheet1.B2:B10"
 
  oDataSequence = oDataProvider.createDataSequenceByRangeRepresentation(sDataRange)
}}


データ範囲を指定してデータ ソースを作成、名前付きデータ シークエンスを得る方法がありますがあまり望みどおりの物が出来ません (createDataSource メソッドを使用します)。
データ範囲を指定してデータソースを作成、名前付きデータシークエンスを得る方法がありますがあまり望みどおりの物が出来ません (createDataSource メソッドを使用します)。



Reload   New Lower page making Edit Freeze Diff Upload Copy Rename   Front page List of pages Search Recent changes Backup   Help   RSS of recent changes