How can I open a Grapher file and edit the legend via automation?

This article contains a sample script for opening an existing GRF or GPJ file and editing an existing graph legend.  Note that this script is not designed to edit the properties of a multi-graph legend.

To run this script:

  1. Click here to download the BAS file: Legend_existing.BAS.
  2. Click Automation | Scripts | Run, select the BAS file from your downloads directory, and click Open.


  1. Copy the script below.
  2. Open Grapher and turn on the Script Manager by clicking View | Display | Script Manager.
  3. Press Ctrl+A to select all of the existing lines in the Script Manager and then press DELETE.
  4. Press Ctrl+V to paste it into the Script Manager.
  5. Click the Start/Resume icon () in the Script Manager. 


Sub Main

 Dim GrapherApp As Object
 Set GrapherApp = CreateObject("Grapher.Application")
 GrapherApp.Visible = True

file$ = GetFilePath$(,"grf;gpj",,"Open",0)
Set plot = GrapherApp.Documents.Open(file$)

Dim Shapes As Object
Set Shapes = Plot.Shapes

Set Graph1 = Plot.Shapes.Item ("Graph 1")

Dim Legend As Object
Set Legend = Graph1.Legends.Item(1)

For i = 1 To n

Legend.EntryFont(i).face = "Times New Roman"
Legend.EntryFont(i).color = grfColorGreen
Legend.EntryFont(i).Bold = True
Legend.EntryFont(i).Italic = True
Legend.EntryFont(i).size = 18

Next i

End Sub


Updated October 16, 2018

Was this article helpful?
0 out of 0 found this helpful



Please sign in to leave a comment.