ページ 11

XY散布図で線を消したい。消す方法は?

Posted: 1月 24, 2014, 11:37 pm
by arai_kiyoshi
以下の様なマクロでデータ系列を作り、別シートにチャートを作り、そのチャートを散布図に
すると、線付プロット付になる。
これをプロット無しにすることは出来るが、色々と検索したが、線を無しにする方法が
見つけられなかった。
どなたか、線を消す方法を教えて下さい。

マクロは以下の通りです。動くマクロ入りファイルを添付します。

Sub draw_data()
Dim N As Long, i As Long
Dim x As Double, dx As Double
Dim aChart AS object

N = 10
x = 0
dx = 3.14 * 2 / N

' データ作成部

For i = 0 To N - 1
ThisComponent.Sheets(0).getCellByPosition(0, i).Value = x
ThisComponent.Sheets(0).getCellByPosition(1, i).Value = Sin(x)
x = x + dx
Next i


Dim Rect As New com.sun.star.awt.Rectangle
Dim RangeAddress(0) As New com.sun.star.table.CellRangeAddress
ThisComponent.Sheets.insertNewByName("chart",0)


' グラフ位置
Rect.X = 1000
Rect.Y = 1000
' グラフサイズ
Rect.Width = 10000
Rect.Height = 7000

RangeAddress(0).Sheet = 1
RangeAddress(0).StartColumn = 0
RangeAddress(0).StartRow = 0
RangeAddress(0).EndColumn = 1
RangeAddress(0).EndRow = N - 1

aChart=ThisComponent.Sheets(0).Charts

aChart.addNewByName("datagraph", Rect, RangeAddress(), False, False)


' 各系列の名前(凡例に用いられる)
' aChart.getByName("datagraph").embeddedObject().Data.setColumnDescriptions(Array("x","sin(x)")

' 散布図を選択
aChart.getByName("datagraph").embeddedObject.Diagram _
= aChart.getByName("datagraph").embeddedObject.createInstance("com.sun.star.chart.XYDiagram")

' データポイントなし
aChart.getByName("datagraph").embeddedObject.Diagram.SymbolType =-3 ' no points

' 一本目の系列(sin(x))を青にして太く
aChart.getByName("datagraph").embeddedObject.Diagram.getDataRowProperties(1).LineColor = RGB(0,150,50)
aChart.getByName("datagraph").embeddedObject.Diagram.getDataRowProperties(1).LineWidth = 0


End Sub

Re: XY散布図で線を消したい。消す方法は?

Posted: 1月 25, 2014, 2:16 pm
by ike@九州
以下で可能でしょうか?
aChart.getByName("datagraph").embeddedObject.Diagram.getDataRowProperties(1).lines = false

調べるには はにゃ?さんの MRI を使うのが吉です
http://extensions.openoffice.org/en/project/MRI

以下も参照
http://www.openoffice.org/api/docs/comm ... dex-1.html

Re: XY散布図で線を消したい。消す方法は?

Posted: 1月 25, 2014, 7:28 pm
by arai_kiyoshi
ありがとうございます。
消せました。
感謝!

MRI についてもインストールはしたのですが、今一つ使い方が良く分かりません。
もう少し自分で使い方を調べてどうしようも無くなったら、別テーマとしてお聞きするかもしれません
OOoBASICは色々な処に情報が散らばっている印象ですが、頑張ります。

情報をありがとうございます。