Difference between revisions of "IT/Documentation/BASIC Guide/Structure of Charts"
Sseminario (Talk | contribs) |
Sseminario (Talk | contribs) (→Titolo, sottotitolo e legenda) |
||
Line 23: | Line 23: | ||
Entrambi i servizi <tt>com.sun.star.chart.ChartTitle</tt> e <tt>com.sun.star.chart.ChartLegend</tt> supportano il servizio <tt>com.sun.star.drawing.Shape</tt>. Gli utenti hanno pertanto l'opportunità di determinare la posizione e le dimensioni dell'elemento utilizzando le proprietà <tt>Position</tt> e <tt>Size</tt>. Poiché le dimensioni della legenda e dei titoli sono calcolate automaticamente in base al contenuto corrente e all'altezza dei caratteri, ad esempio, la proprietà delle dimensioni fornisce l'accesso in sola lettura. | Entrambi i servizi <tt>com.sun.star.chart.ChartTitle</tt> e <tt>com.sun.star.chart.ChartLegend</tt> supportano il servizio <tt>com.sun.star.drawing.Shape</tt>. Gli utenti hanno pertanto l'opportunità di determinare la posizione e le dimensioni dell'elemento utilizzando le proprietà <tt>Position</tt> e <tt>Size</tt>. Poiché le dimensioni della legenda e dei titoli sono calcolate automaticamente in base al contenuto corrente e all'altezza dei caratteri, ad esempio, la proprietà delle dimensioni fornisce l'accesso in sola lettura. | ||
− | Per la formattazione degli elementi sono disponibili altre proprietà di riempimento e linee (i servizi <idl>com.sun.star.drawing.FillProperties</idl> | + | Per la formattazione degli elementi sono disponibili altre proprietà di riempimento e linee (i servizi <idl>com.sun.star.drawing.FillProperties</idl> e <idl>com.sun.star.drawing.LineProperties</idl>) nonché le proprietà dei caratteri (servizio <idl>com.sun.star.style.CharacterProperties</idl>). |
<idl>com.sun.star.chart.ChartTitle</idl> contiene non solo le proprietà di formattazione citate, ma anche le altre due proprietà seguenti: | <idl>com.sun.star.chart.ChartTitle</idl> contiene non solo le proprietà di formattazione citate, ma anche le altre due proprietà seguenti: |
Latest revision as of 10:42, 17 July 2009
- Uso dei diagrammi nei fogli elettronici
- Struttura dei diagrammi
- Tipi di diagrammi
La struttura di un diagramma, e pertanto l'elenco di servizi e interfacce supportate, dipende dal tipo di diagramma. Ad esempio, i metodi e le proprietà dell'asse Z sono disponibili solo nei diagrammi 3D, ma non nei diagrammi 2D. Nei grafici a torta, non vi sono interfacce per lavorare con gli assi.
Contents
Titolo, sottotitolo e legenda
Titolo, sottotitolo e legenda fanno parte degli elementi base di ogni diagramma. L'oggetto Chart fornisce le seguenti proprietà per l'amministrazione degli elementi:
- HasMainTitle (Boolean)
- Attiva il titolo
- Title (Object)
- Oggetto con informazioni dettagliate sul titolo del diagramma (supporta il servizio com.sun.star.chart.ChartTitle)
- HasSubTitle(Boolean)
- Attiva il sottotitolo
- Subtitle (Object)
- Oggetto con informazioni dettagliate sul sottotitolo del diagramma (supporta il servizio com.sun.star.chart.ChartTitle)
- HasLegend (Boolean)
- Attiva la legenda
- Legend (Object)
- Oggetto con informazioni dettagliate sulla legenda (supporta il servizio com.sun.star.chart.ChartLegend)
Entrambi i servizi com.sun.star.chart.ChartTitle e com.sun.star.chart.ChartLegend supportano il servizio com.sun.star.drawing.Shape. Gli utenti hanno pertanto l'opportunità di determinare la posizione e le dimensioni dell'elemento utilizzando le proprietà Position e Size. Poiché le dimensioni della legenda e dei titoli sono calcolate automaticamente in base al contenuto corrente e all'altezza dei caratteri, ad esempio, la proprietà delle dimensioni fornisce l'accesso in sola lettura.
Per la formattazione degli elementi sono disponibili altre proprietà di riempimento e linee (i servizi com.sun.star.drawing.FillProperties e com.sun.star.drawing.LineProperties) nonché le proprietà dei caratteri (servizio com.sun.star.style.CharacterProperties).
com.sun.star.chart.ChartTitle contiene non solo le proprietà di formattazione citate, ma anche le altre due proprietà seguenti:
- String (String)
- Testo da visualizzare come titolo o sottotitolo
- TextRotation (Long)
- Angolo di rotazione del testo in centesimi di grado
La legenda (servizio com.sun.star.chart.ChartLegend) contiene la seguente proprietà addizionale:
- Alignment (Enum)
- Posizione in cui compare la legenda (valore di tipo com.sun.star.chart.ChartLegendPosition)
L'esempio seguente crea un diagramma e vi assegna "Main Title String" come titolo, Subtitle String" come sottotitolo e una legenda. La legenda ha un colore di sfondo grigio, è situata in fondo al diagramma e ha dimensioni del carattere di 7 punti.
Dim Doc As Object Dim Charts As Object Dim Chart as Object Dim Rect As New com.sun.star.awt.Rectangle Dim RangeAddress(0) As New com.sun.star.table.CellRangeAddress Rect.X = 8000 Rect.Y = 1000 Rect.Width = 10000 Rect.Height = 7000 RangeAddress(0).Sheet = 0 RangeAddress(0).StartColumn = 0 RangeAddress(0).StartRow = 0 RangeAddress(0).EndColumn = 2 RangeAddress(0).EndRow = 12 Doc = StarDesktop.CurrentComponent Charts = Doc.Sheets(0).Charts Charts.addNewByName("MyChart", Rect, RangeAddress(), True, True) Chart = Charts.getByName("MyChart").EmbeddedObject Chart.HasMainTitle = True Chart.Title.String = "Main Title String" Chart.HasSubTitle = True Chart.Subtitle.String = "Subtitle String" Chart.HasLegend = True Chart.Legend.Alignment = com.sun.star.chart.ChartLegendPosition.BOTTOM Chart.Legend.FillStyle = com.sun.star.drawing.FillStyle.SOLID Chart.Legend.FillColor = RGB(210, 210, 210) Chart.Legend.CharHeight = 7
Sfondo
Ogni diagramma ha un'area di sfondo. L'oggetto Chart fornisce la proprietà Area per formattare lo sfondo:
- Area (Object)
- Area di sfondo del diagramma (supporta il servizio com.sun.star.chart.ChartArea)
Lo sfondo di un diagramma copre la sua area completa, compresa l'area sotto al titolo, al sottotitolo e alla legenda. Il servizio com.sun.star.chart.ChartArea associato supporta le proprietà di linee e riempimento.
Diagramma
L'oggetto Chart fornisce la proprietà Diagram che forma il sistema di coordinate con assi e griglie, in cui i dati verranno visualizzati:
- Diagram (Object)
- Oggetto che forma il sistema di coordinate in cui vengono tracciati i dati. Supporta il servizio com.sun.star.chart.Diagram e:
I servizi supportati dipendono dal tipo di diagramma (vedere Tipi di diagrammi).
Pareti e basi dei diagrammi
La parete del diagramma è lo sfondo del sistema di coordinate in cui vengono tracciati i dati. Per i diagrammi 3D esistono generalmente due pareti: una dietro l'area dei dati e una come demarcazione a sinistra o a destra. Ciò dipende dalla rotazione del diagramma. I diagrammi 3D hanno in genere anche una base o pavimento.
L'oggetto Diagram fornisce le proprietà per pareti e basi:
- Wall (Object)
- Parete di sfondo del sistema di coordinate (supporta il servizio com.sun.star.chart.ChartArea)
- Floor (Object)
- Pannello della base del sistema di coordinate (solo per diagrammi 3D, supporta il servizio com.sun.star.chart.ChartArea)
Gli oggetti specificati supportano il servizio com.sun.star.chart.ChartArea, che fornisce le classiche proprietà di riempimento e linee (servizi com.sun.star.drawing.FillProperties e com.sun.star.drawing.LineProperties, consultare il capitolo Disegni e presentazioni).
L'esempio seguente mostra come l'immagine (denominata Cielo) già contenuta in Apache OpenOffice può essere utilizzata come sfondo per un diagramma. Il colore impostato per la parete è l'azzurro.
Dim Doc As Object Dim Charts As Object Dim Chart as Object Dim Rect As New com.sun.star.awt.Rectangle Dim RangeAddress(0) As New com.sun.star.table.CellRangeAddress Rect.X = 8000 Rect.Y = 1000 Rect.Width = 10000 Rect.Height = 7000 RangeAddress(0).Sheet = 0 RangeAddress(0).StartColumn = 0 RangeAddress(0).StartRow = 0 RangeAddress(0).EndColumn = 2 RangeAddress(0).EndRow = 12 Doc = StarDesktop.CurrentComponent Charts = Doc.Sheets(0).Charts Charts.addNewByName("MyChart", Rect, RangeAddress(), True, True) Chart = Charts.getByName("MyChart").EmbeddedObject Chart.Area.FillStyle = com.sun.star.drawing.FillStyle.BITMAP Chart.Area.FillBitmapName = "Sky" Chart.Area.FillBitmapMode = com.sun.star.drawing.BitmapMode.REPEAT Chart.Diagram.Wall.FillStyle = com.sun.star.drawing.FillStyle.SOLID Chart.Diagram.Wall.FillColor = RGB(00,132,209)
Assi
Apache OpenOffice riconosce cinque diversi assi utilizzabili in un diagramma. Nel suo scenario più semplice, sono gli assi X e Y. Quando si utilizzano i diagrammi 3D, viene talvolta fornito anche un asse Z. Per i diagrammi in cui i valori delle diverse righe di dati si scostano reciprocamente in modo significativo, Apache OpenOffice fornisce un secondo asse X e un secondo asse Y per le altre operazioni di scalatura.
L'oggetto Diagram fornisce le seguenti proprietà per accedere agli assi:
- HasXAxis (Boolean)
- Attiva l'asse X.
- XAxis (Object)
- Oggetto con informazioni dettagliate sull'asse X (supporta il servizio com.sun.star.chart.ChartAxis)
- HasXAxisDescription (Boolean)
- Attiva le etichette per gli indicatori di intervallo dell'asse X
- HasYAxis (Boolean)
- Attiva l'asse Y
- YAxis (Object)
- Oggetto con informazioni dettagliate sull'asse Y (supporta il servizio com.sun.star.chart.ChartAxis)
- HasYAxisDescription (Boolean)
- Attiva le etichette per gli indicatori di intervallo dell'asse Y
- HasZAxis (Boolean)
- Attiva l'asse Z
- ZAxis (Object)
- Oggetto con informazioni dettagliate sull'asse Z (supporta il servizio com.sun.star.chart.ChartAxis)
- HasZAxisDescription (Boolean)
- Attiva le etichette per gli indicatori di intervallo dell'asse Z
- HasSecondaryXAxis (Boolean)
- Attiva l'asse X secondario
- SecondaryXAxis (Object)
- Oggetto con informazioni dettagliate sull'asse X secondario (supporta il servizio com.sun.star.chart.ChartAxis)
- HasSecondaryXAxisDescription (Boolean)
- Attiva le etichette per gli indicatori di intervallo dell'asse X secondario
- HasSecondaryYAxis (Boolean)
- Attiva l'asse Y secondario
- SecondaryYAxis (Object)
- Oggetto con informazioni dettagliate sull'asse X secondario (supporta il servizio com.sun.star.chart.ChartAxis)
- HasSecondaryYAxisDescription (Boolean)
- Attiva le etichette per gli indicatori di intervallo dell'asse Y secondario
Proprietà degli assi
Gli oggetti assi di un diagramma di Apache OpenOffice supportano il servizio com.sun.star.chart.ChartAxis. Oltre alle proprietà per i caratteri (servizio com.sun.star.style.CharacterProperties, consultare il capitolo Documenti di testo) e per le linee (servizio com.sun.star.drawing.LineStyle, consultare il capitolo Disegni e presentazioni), fornisce anche le seguenti proprietà:
Proprietà di scalatura:
- Max (Double)
- Valore massimo per l'asse
- Min (Double)
- Valore minimo per l'asse
- Origin (Double)
- Punto di intersezione per l'attraversamento degli assi
- StepMain (Double)
- Distanza tra gli indicatori di intervallo primari
- StepHelp (Double)
- Distanza tra gli indicatori di intervallo secondari (obsoleta da OpenOffice.org 3.0; utilizzare la proprietà StepHelpCount)
- StepHelpCount (Long)
- Contiene il numero di intervalli secondari all'interno di un intervallo primario. Ad esempio, se la proprietà StepHelpCount è pari a 5, l'intervallo primario viene suddiviso in 5 parti e vengono prodotti 4 segni di graduazioni secondari. (Disponibile a partire da OpenOffice.org 3.0)
- AutoMax (Boolean)
- Il valore massimo dell'asse viene calcolato automaticamente quando è impostato su true
- AutoMin (Boolean)
- Il valore minimo dell'asse viene calcolato automaticamente quando è impostato su true
- AutoOrigin (Boolean)
- L'origine viene determinata automaticamente quando è impostato su true
- AutoStepMain (Boolean)
- StepMain viene determinato automaticamente quando viene impostato su true
- AutoStepHelp (Boolean)
- StepHelpCount viene determinato automaticamente quando è impostato su true
- Logarithmic (Boolean)
- Scala gli assi in modo logaritmico (invece che lineare)
- ReverseDirection (Boolean)
- Determina se l'orientamento degli assi è matematico o invertito. (Disponibile a partire da OpenOffice.org 2.4)
Proprietà delle etichette:
- DisplayLabels (Boolean)
- Attiva l'etichetta di testo in corrispondenza degli indicatori di intervallo
- TextRotation (Long)
- Angolo di rotazione dell'etichetta di testo degli assi, espresso in centesimi di grado
- ArrangeOrder (enum)
- L'etichetta potrebbe essere sfalsata, pertanto vengono posizionati in modo alternato su due linee (valori conformi a com.sun.star.chart.ChartAxisArrangeOrderType)
- TextBreak (Boolean)
- Consente le interruzioni di riga nelle etichette degli assi
- TextCanOverlap (Boolean)
- Consente una sovrapposizione delle etichette degli assi.
- NumberFormat (Long)
- Formato numerico da utilizzare con le etichette degli assi
- LinkNumberFormatToSource (Boolean)
- Determina se utilizzare il formato numerico fornito dal documento contenitore o dalla proprietà NumberFormat (a partire da OpenOffice.org 2.3)
Proprietà degli indicatori di intervallo:
- Marks (Const)
- Determina la posizione degli indicatori di intervallo primari (valori conformi a com.sun.star.chart.ChartAxisMarks)
- HelpMarks (Const)
- Determina la posizione degli indicatori di intervallo secondari (valori conformi a com.sun.star.chart.ChartAxisMarks)
Solo per diagrammi a barre:
- Overlap (Long)
- Valore percentuale che specifica in che misura le barre dei diversi gruppi di dati possono sovrapporsi (al 100%, le barre sono visualizzate completamente sovrapposte, a -100%, vi è tra esse una distanza pari alla larghezza di una barra)
- GapWidth (long)
- Valore percentuale che specifica la distanza che può esservi tra i diversi gruppi di barre di un diagramma (al 100%, vi è tra esse una distanza pari alla larghezza di una barra)
Griglie
Per gli assi principali, le griglie e le sottogriglie possono essere visualizzate in corrispondenza agli intervalli primari e secondari. L'oggetto Diagram fornisce le seguenti proprietà per accedere alle griglie:
- HasXAxisGrid (Boolean)
- Attiva la griglia principale per l'asse X
- XMainGrid (Object)
- Oggetto con informazioni dettagliate sulla griglia principale per l'asse X (supporta il servizio com.sun.star.chart.ChartGrid)
- HasXAxisHelpGrid (Boolean)
- Attiva la griglia ausiliaria per l'asse X.
- XHelpGrid (Object)
- Oggetto con informazioni dettagliate sulla griglia ausiliaria per l'asse X (supporta il servizio com.sun.star.chart.ChartGrid)
Lo stesso vale per gli assi Y e Z:
- HasYAxisGrid (Boolean)
- Attiva la griglia principale per l'asse Y
- YMainGrid (Object)
- Oggetto con informazioni dettagliate sulla griglia principale per l'asse Y (supporta il servizio com.sun.star.chart.ChartGrid)
- HasYAxisHelpGrid (Boolean)
- Attiva la griglia ausiliaria per l'asse Y
- YHelpGrid (Object)
- Oggetto con informazioni dettagliate sulla griglia ausiliaria per l'asse Y (supporta il servizio com.sun.star.chart.ChartGrid)
- HasZAxisGrid (Boolean)
- Attiva la griglia principale per l'asse Z
- ZMainGrid (Object)
- Oggetto con informazioni dettagliate sulla griglia principale per l'asse Z (supporta il servizio com.sun.star.chart.ChartGrid)
- HasZAxisHelpGrid (Boolean)
- Attiva la griglia ausiliaria per l'asse Z
- ZHelpGrid (Object)
- Oggetto con informazioni dettagliate sulla griglia ausiliaria per l'asse Z (supporta il servizio com.sun.star.chart.ChartGrid)
L'oggetto per la griglia è basato sul servizio com.sun.star.chart.ChartGrid, che a sua volta supporta le proprietà delle linee del servizio com.sun.star.drawing.LineStyle (consultare il capitolo Disegni e presentazioni).
Titolo degli assi
Per tutti gli assi può essere visualizzato un titolo aggiuntivo. L'oggetto Diagram fornisce le seguenti proprietà per accedere al titolo degli assi:
- HasXAxisTitle (Boolean)
- Attiva il titolo dell'asse X
- XAxisTitle (Object)
- Oggetto con informazioni dettagliate sul titolo dell'asse X (supporta il servizio com.sun.star.chart.ChartTitle)
Lo stesso vale per gli assi Y e Z:
- HasYAxisTitle (Boolean)
- Attiva il titolo dell'asse Y
- YAxisTitle (Object)
- Oggetto con informazioni dettagliate sul titolo dell'asse Y (supporta il servizio com.sun.star.chart.ChartTitle)
- HasZAxisTitle (Boolean)
- Attiva il titolo dell'asse Z
- ZAxisTitle (Object)
- Oggetto con informazioni dettagliate sul titolo dell'asse Z (supporta il servizio com.sun.star.chart.ChartTitle)
Lo stesso vale anche per gli assi secondari (disponibile a partire da OpenOffice.org 3.0):
- HasSecondaryXAxisTitle (Boolean)
- Attiva il titolo dell'asse X secondario.
- SecondXAxisTitle (Object)
- Oggetto con informazioni dettagliate sul titolo dell'asse X secondario (supporta il servizio com.sun.star.chart.ChartTitle)
- HasSecondaryYAxisTitle (Boolean)
- Attiva il titolo dell'asse Y secondario.
- SecondYAxisTitle (Object)
- Oggetto con informazioni dettagliate sul titolo dell'asse Y secondario (supporta il servizio com.sun.star.chart.ChartTitle)
Gli oggetti per la formattazione del titolo degli assi sono basati sul servizio com.sun.star.chart.ChartTitle, utilizzato anche per i titoli dei diagrammi.
Esempio
L'esempio seguente crea un diagramma a linee. Il colore della parete posteriore del diagramma è impostato sul bianco. Gli assi X e Y hanno una griglia grigia per l'orientamento visivo. Il valore minimo dell'asse Y è fissato su 0, mentre quello massimo è 100, in modo che la risoluzione del diagramma venga conservata anche se i valori vengono modificati. L'asse X punta in direzione inversa da destra a sinistra ed è stato aggiunto un titolo per l'asse X.
Dim Doc As Object Dim Charts As Object Dim Chart as Object Dim Rect As New com.sun.star.awt.Rectangle Dim RangeAddress(0) As New com.sun.star.table.CellRangeAddress Doc = StarDesktop.CurrentComponent Charts = Doc.Sheets(0).Charts Rect.X = 8000 Rect.Y = 1000 Rect.Width = 10000 Rect.Height = 7000 RangeAddress(0).Sheet = 0 RangeAddress(0).StartColumn = 0 RangeAddress(0).StartRow = 0 RangeAddress(0).EndColumn = 2 RangeAddress(0).EndRow = 12 Charts.addNewByName("MyChart", Rect, RangeAddress(), True, True) Chart = Charts.getByName("MyChart").embeddedObject Chart.Diagram = Chart.createInstance("com.sun.star.chart.LineDiagram") Chart.Diagram.Wall.FillColor = RGB(255, 255, 255) Chart.Diagram.HasXAxisGrid = True Chart.Diagram.XMainGrid.LineColor = RGB(192, 192, 192) Chart.Diagram.HasYAxisGrid = True Chart.Diagram.YMainGrid.LineColor = RGB(192, 192, 192) Chart.Diagram.YAxis.Min = 0 Chart.Diagram.YAxis.Max = 100 Chart.Diagram.XAxis.ReverseDirection = true 'needs OpenOffice.org 2.4 or newer Chart.Diagram.HasXAxisTitle = true Chart.Diagram.XAxisTitle.String = "Reversed X Axis Example"
Diagrammi 3D
La maggior parte dei diagrammi di Apache OpenOffice può essere visualizzata con immagini 3D. Le seguenti proprietà vengono fornite per i diagrammi 3D in corrispondenza dell'oggetto Diagram:
- Dim3D (Boolean)
- Attiva la visualizzazione 3D
- Deep (Boolean)
- Le barre vengono disposte l'una dietro all'altra nella direzione dell'asse Z
- RightAngledAxes (Boolean)
- Attiva una modalità di visualizzazione 3D in cui gli assi X e Y formano un angolo retto nella proiezione. (Disponibile a partire da OpenOffice.org 2.3)
- D3DScenePerspective (Enum)
- Definisce se gli oggetti 3D devono essere tracciati in proiezione prospettica o parallela. (Valori conformi a com.sun.star.drawing.ProjectionMode)
- Perspective (Long)
- Prospettiva di diagrammi 3D ( [0,100] ) (disponibile a partire da OpenOffice.org 2.4.1)
- RotationHorizontal (Long)
- Rotazione orizzontale di diagrammi 3D espressa in gradi ( [-180,180] ) (disponibile a partire da OpenOffice.org 2.4.1)
- RotationVertical (Long)
- Rotazione verticale di diagrammi 3D espressa in gradi ( [-180,180] ) (disponibile a partire da OpenOffice.org 2.4.1)
Nel seguente esempio viene creato un diagramma ad area 3D.
Dim Doc As Object Dim Charts As Object Dim Chart as Object Dim Rect As New com.sun.star.awt.Rectangle Dim RangeAddress(0) As New com.sun.star.table.CellRangeAddress Doc = StarDesktop.CurrentComponent Charts = Doc.Sheets(0).Charts Rect.X = 8000 Rect.Y = 1000 Rect.Width = 10000 Rect.Height = 7000 RangeAddress(0).Sheet = 0 RangeAddress(0).StartColumn = 0 RangeAddress(0).StartRow = 0 RangeAddress(0).EndColumn = 2 RangeAddress(0).EndRow = 12 Charts.addNewByName("MyChart", Rect, RangeAddress(), True, True) Chart = Charts.getByName("MyChart").embeddedObject Chart.Diagram = Chart.createInstance("com.sun.star.chart.AreaDiagram") Chart.Diagram.Dim3D = true Chart.Diagram.Deep = true Chart.Diagram.RightAngledAxes = true 'needs OpenOffice.org 2.3 or newer Chart.Diagram.D3DScenePerspective = com.sun.star.drawing.ProjectionMode.PERSPECTIVE Chart.Diagram.Perspective = 100 'needs OpenOffice.org 2.4.1 or newer Chart.Diagram.RotationHorizontal = 60 'needs OpenOffice.org 2.4.1 or newer Chart.Diagram.RotationVertical = 30 'needs OpenOffice.org 2.4.1 or newer
Diagrammi sovrapposti
I diagrammi sovrapposti sono diagrammi organizzati con diversi singoli valori impilati per produrre un valore totale. Questa vista mostra non solo i singoli valori, ma anche una panoramica di tutti i valori.
In Apache OpenOffice, vari tipi di diagrammi possono essere visualizzati in forma sovrapposta. Tutti questi diagrammi supportano il servizio com.sun.star.chart.StackableDiagram, che a sua volta fornisce le proprietà seguenti:
- Stacked (Boolean)
- Attiva la modalità di visualizzazione sovrapposta
- Percent (Boolean)
- Anziché i valori assoluti, visualizza la loro distribuzione percentuale.
Content on this page is licensed under the Public Documentation License (PDL). |