Der Programmierer, der das Diagramm erstellt, stellt die WIDTH je nach Wichtigkeit des Diagramms und dem Gesamtlayout der Seite entsprechend ein. Die Diagrammelemente passen ihre Größe automatisch korrekt an, um Änderungen in der Diagrammbreite Rechnung zu tragen.
Die Breite der Header- und Rahmenbereiche sowie der längste Diagrammbalken werden mit WIDTH kalkuliert. Dadurch wird gewährleistet, dass keines der Grafikelemente breiter ist als das Diagramm und dadurch über die rechte Seite des Bildes hinausgeht.
Die Anzahl der Datensätze bestimmt die HEIGHT des Diagramms. Um den anzuzeigenden Werten Platz zu machen, wird das Diagramm immer höher, je mehr Elemente den datavalues[]- und datanames[]-Arrays hinzugefügt werden.
Das maximum wird kalkuliert und für die Breite des längsten Balkens eingesetzt. Anschließend werden die Breiten der restlichen Balken proportional zum maximum errechnet:
Mit dem Datenwert maximum und der innerWIDTH des Diagrammbereiches stellt der obige Algorithmus sicher, dass die Balken entsprechend größer oder kleiner werden, wenn der Wert WIDTH geändert wird.
Anzeige des Diagrammhintergrunds
Um das Diagramm anzeigen zu können, muss zunächst ein Hintergrundbild erstellt und dann die Diagrammdaten hinzugefügt werden. Zuerst ist ein graphBG-Objekt zu erstellen und dann dessen draw()-Methode aufzurufen:
Die Parameter der draw()-Methode umfassen den Grafikinhalt, biContext, sowie WIDTH und HEIGHT, welche von der graphBG-Klasse zur Bestimmung der Breiten und Höhen der Header- und Diagrammbereiche benutzt werden. Schließlich wird der Datenwert average kalkuliert und an den im Header angezeigten Text angehängt.
Looping durch die Balken
Die y-Position jedes Balkens wird mit y_pos = i * displayHeight + headerOffset kalkuliert, wobei displayHeight die Summe aus der Höhe des Textes über dem Balken und der Höhe des Balkens selbst ist. headerOffset steht für den vertikalen Abstand vom oberen Rand des Diagramms, unter Berücksichtigung der Höhe des Headerbereiches und dessen Abstandschatten.
Die Balken und deren Rahmen wurden auf ähnliche Weise erstellt wie der Rahmen des Headers. Breite und Höhe der Balkenrahmen wurden um ein Pixel verringert, damit es aussieht, als habe jeder Balken einen roten Rahmen, und um den Ausschnitteffekt zu erzeugen, der durch den auf dem weißen Hintergrund des Diagramms gezeichneten weißen Innenrahmen der Balken unterstützt wird.
Das operative Ergebnis wächst um fast 6 Billionen Won auf 6,64 Billionen Won. Die Gewinne…
Ab Werk blockiert Chrome Cookies von Dritten nun frühestens ab Anfang 2025. Unter anderem gibt…
Die Vorfreude steigt, denn BAUMLINK wird als Partner und Aussteller bei der Tech Show 2024…
Nutzung einer unternehmenseigenen GPT-Umgebung für sicheren und datenschutzkonformen Zugriff.
Der Umsatz steigt um 15 Prozent, der Nettogewinn um 57 Prozent. Im nachbörslichen Handel kassiert…
Aus 61,9 Milliarden Dollar generiert das Unternehmen einen Nettoprofit von 21,9 Milliarden Dollar. Das größte…