Top > OOoBasic > Writer > Charts

チャート Edit

Writer に挿入するチャートは埋め込み型オブジェクトです。

Calc にチャートを挿入するときと違い、データをチャートのデータを設定したり、凡例を設定する必要があります。

次のコードは以下のような手順で行っています。

  1. チャートを埋め込み型オブジェクトとして挿入
  2. 積み上げパーセント表示のチャートに変更
  3. データを設定
  4. データ系列ラベルの設定
  5. チャートタイトルの設定
Sub chart_1
  oDoc = ThisComponent
  oText = oDoc.getText()
  
  oEmbeded = oDoc.createInstance("com.sun.star.text.TextEmbeddedObject")
  oEmbeded.CLSID = "12DCAE26-281F-416F-a234-c3086127382e"

  aSize = CreateUnoStruct("com.sun.star.awt.Size")
  aSize.Width = 8000
  aSize.Height = 7000
  oEmbeded.setSize(aSize)
  
  oCursor = oText.createTextCursor()
  oEnd = oText.getEnd()
  oText.insertTextContent(oEnd,oEmbeded,False)
  
  oChart = oEmbeded.Model
  oDiagram = oChart.createInstance("com.sun.star.chart.StackableDiagram")

  oChart.setDiagram(oDiagram)
  oDiagram = oChart.getDiagram()
  With oDiagram
    .Stacked = True
    .Percent = True
    .Vertical = True
  End With

  oData = oChart.getData()
  Dim nData(1,3) As Double
  nData(0,0) = 40.0
  nData(0,1) = 25.0
  nData(0,2) = 18.0
  nData(0,3) = 17.0
  
  nData(1,0) = 35.0
  nData(1,1) = 35.0
  nData(1,2) = 15.0
  nData(1,3) = 15.0
  
  oData.setData(nData)
  
  oData.setRowDescriptions( _
    Array("Data 1", "Data 2"))
  oData.setColumnDescriptions( _
    Array("A", "B", "C", "D"))

  oChart.HasMainTitle = True
  oTitle = oChart.Title
  oTitle.String = "Chart Title"
End Sub

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