LibreOffice 25.2 Hjælp
Tjenesten Chart (diagram) leverer et sæt egenskaber og metoder til at håndtere diagrammer i Calc-dokumenter. Med denne tjeneste er det muligt at:
Tilgå diagram-objekter i Calc-dokumenter og manipuler deres egenskaber.
Opret og indsæt nye diagrammer i et Calc-dokument.
Eksportere diagrammer som billedfiler.
Diagrammer kan have to forskellige navne:
Et internt navn givet af LibreOffice gå snart diagram-objektet (sædvanligvis "Objekt 1", "Objekt 2" og så videre).
Et brugerdefineret navn, som kan defineres ved at højreklikke på diagrammet og vælge i kontekstmenuen.
Tjenesten Chart (diagram) bruger primært det brugerdefinerede navn til at tilgå et diagram-objekt. Hvis det ikke eksisterer, bruges det interne navn.
Før brug af tjenesten Chart skal biblioteket ScriptForge være indlæst eller importeret:
Tjenesten Chart (diagram) instantieres fra en tjenesteforekomst af Calc med en af metoderne Charts (diagrammer) eller CreateChart (opret_diagram).
Eksemplet herunder opretter en tjenesteforekomst af Chart (diagram) fra et eksisterende diagram i det aktuelle Calc-dokument:
    GlobalScope.BasicLibraries.LoadLibrary("ScriptForge")
    Dim oDoc as Object, oChart as Object
    Set oDoc = CreateScriptService("Calc")
    Set oChart = oDoc.Charts("Sheet1", "Object 1")
  Det følgende eksempel instantierer tjenesten Chart (diagram) ved at oprette et nyt diagram-objekt baseret på data indeholdt i området "Sheet1.A1:C10".
    Dim oDoc as Object, oChart as Object
    Set oDoc = CreateScriptService("Calc")
    Set oChart = oDoc.CreateChart("My Chart", "Sheet1", "Sheet1.A1:C10")
  Læs metodebeskrivelsen CreateChart (opret_diagram) for at få mere at at vide om dens argumenter.
Eksemplerne herunder kan skrives i Python som følger:
    from scriptforge import CreateScriptService
    doc = CreateScriptService("Calc")
    chart = doc.Charts("Sheet1", "Object 1")
  
    doc = CreateScriptService("Calc")
    chart = doc.CreateChart("My Chart", "Sheet1", "Sheet1.A1:C10")
  | Navn | Skrivebeskyttet | Type | Beskrivelse | 
|---|---|---|---|
| ChartType | No | String | Angiver diagramtypen som en streng, der kan antage en af følgende værdier: "Lagkage", "Bjælke", "Donut", "Kolonne", "Område", "Linje", "XY", "Boble", "Net". | 
| Deep | No | Boolean | Når True (sand) påpeges, at diagrammet er tredimensionelt og hver serie er arrangeret på z-aksen. Når False (falsk), arrangeres serien betragtet med kun to dimensioner. | 
| Dim3D | No | Boolean or String | Angiver, om diagrammet vises med 3D-elementer. Hvis værdien er en streng, skal den være enten "Bjælke", "Cylinder", "Kegle" eller "Pyramide". Hvis den boolske værdi True (sand) er angivet, vises diagrammet med 3D-bjælker. | 
| Exploded | No | Numeric | Angiver hvor meget lagkagestykkerne er forskudt fra diagrammets centrum som en procentdel af radius. Gælder kun lagkage- og donut-diagrammer. | 
| Filled | No | Boolean | Når True (sand), angives et udfyldt net-diagram. Gælder kun net-diagrammer. | 
| Legend | No | Boolean | Angiver, om diagrammet har en forklaring eller ej. | 
| Percent | No | Boolean | Når True (sand), stables diagramserierne og hver kategori opsummeres til 100%. Gælder Område-, Bjælke-, Boble-, Kolonne- og Net-diagrammer. | 
| Stacked | No | Boolean | Når True (sand), er serierne stablede. Gælder Område-, Bjælke-, Boble-, Kolonne- og Net-diagrammer. | 
| Title | No | String | Angiver diagrammets hovedtitel. | 
| XTitle | No | String | Angiver x-aksens titel. | 
| YTitle | No | String | Angiver y-aksens titel. | 
| XChartObj | Yes | UNO-objekt | Returnerer objektet, der repræsenterer diagrammet, som er en forekomst af klassen ScChartObj. | 
| XDiagram | Yes | UNO-objekt | Returnerer objektet com.sun.star.chart.XDiagram, der repræsenterer diagrammet over diagrammet. | 
| XShape | Yes | UNO-objekt | Returnerer objektet com.sun.star.drawing.XShape, der repræsenterer diagrammets form. | 
| XTableChart | Yes | UNO-objekt | Returnerer objektet com.sun.star.table.XTableChart, der repræsenterer de data, der vises i diagrammet. | 
Betragt følgende data i området "A1:B6" på et ark kaldet "Rapport".
| A | B | |
|---|---|---|
| 1 | Sample A | Sample B | 
| 2 | 36 | 40 | 
| 3 | 39 | 43 | 
| 4 | 45 | 40 | 
| 5 | 52 | 48 | 
Eksemplerne herunder i Basic og Python viser, hvordan der oprettes et linjediagram fra disse data med forklaringer.
    oDoc = CreateScriptService("Calc")
    oChart = oDoc.CreateChart("Samples", "Report", "Report.A1:B6")
    oChart.ChartType = "Line"
    oChart.Legend = True
    oChart.Resize(1000, 1000, 25000, 15000)
  
    doc = CreateScriptService("Calc")
    chart = doc.CreateChart("Samples", "Report", "Report.A1:B6")
    chart.ChartType = "Line"
    chart.Legend = True
    chart.Resize(1000, 1000, 25000, 15000)
  Diagrammet skal ikke nødvendigvis oprettes på det ark, hvor data er placeret. Det kan oprettes på et vilkårligt ark i den aktuelle fil ved at angive arknavnet i det andet argument i metoden CreateChart (opret_diagram).
| Liste over metoder i tjenesten Chart (diagram) | |
|---|---|
Gemmer diagrammet som en billedfil på en angivet placering. Returnerer True (sand), hvis det lykkedes at oprette billedfilen.
chart.ExportToFile(filename: str, imagetype: str = "png", overwrite: bool = False): bool
filnavn: Identificerer stien og filnavnet, hvor billedet bliver gemt. Det skal følge notationen, som er defineret i SF_FileSystem.FileNaming.
billedtype: Navnet på den billedtype, der skal oprettes. Følgende værdier accepteres: "gif", "jpeg", "png" (standard), "svg" og "tiff".
overskriv: Angiver, om målfilen kan overskrives (Standard = False (falsk)).
      oChart.ExportToFile("C:\Temp\myChart.svg", ImageType := "svg", Overwrite := True)
    
      chart.ExportToFile(r"C:\Temp\myChart.svg", imagetype="svg", overwrite=True)
    Ændrer placeringen af diagrammet på det aktuelle ark og ændrer dets bredde og højde. Returnerer True (sand), hvis størrelsesændringen lykkedes.
chart.Resize([xpos: int], [ypos: int], [width: int], [height: int]): bool
xpos, ypos: Angiv diagrammets nye x- og y-positioner. Hvis nogen af disse værdier udelades eller der angives negative værdier, efterlades de tilsvarende værdier uændrede.
bredde: Angiv diagrammets nye bredde. Hvis dette argument udelades eller der angives en negativ værdi, efterlades diagrammet uændret.
højde: Angiv diagrammets nye højde. Hvis dette argument udelades eller der angives en negativ værdi, efterlades diagramhøjden uændret.
Alle argumenter angives som heltalsværdier, der svarer til 1/100 af en millimeter.
      ' Ændrer kun x- og y-positionerne
      oChart.Rezise(1000, 3000)
      ' Ændrer kun diagrammets bredde og højde
      oChart.Resize(, , 25000, 12500)
      ' Nøgleordsargumenter understøttes
      oChart.Resize(Width := 25000, Height := 12500)
    
      chart.Rezise(1000, 3000)
      chart.Resize(-1, -1, 20000, 20000)
      chart.Resize(width=25000, height=12500)