Wiederverwendbaren Diagrammhintergrund in JSP erstellen

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.

Page: 1 2 3 4

ZDNet.de Redaktion

Recent Posts

Chips bescheren Samsung deutlichen Gewinnzuwachs

Das operative Ergebnis wächst um fast 6 Billionen Won auf 6,64 Billionen Won. Die Gewinne…

5 Tagen ago

Chrome: Google verschiebt das Aus für Drittanbietercookies

Ab Werk blockiert Chrome Cookies von Dritten nun frühestens ab Anfang 2025. Unter anderem gibt…

6 Tagen ago

BAUMLINK: Wir sind Partner und Aussteller bei der Frankfurt Tech Show 2024

Die Vorfreude steigt, denn BAUMLINK wird als Partner und Aussteller bei der Tech Show 2024…

6 Tagen ago

Business GPT: Generative KI für den Unternehmenseinsatz

Nutzung einer unternehmenseigenen GPT-Umgebung für sicheren und datenschutzkonformen Zugriff.

6 Tagen ago

Alphabet übertrifft die Erwartungen im ersten Quartal

Der Umsatz steigt um 15 Prozent, der Nettogewinn um 57 Prozent. Im nachbörslichen Handel kassiert…

1 Woche ago

Microsoft steigert Umsatz und Gewinn im dritten Fiskalquartal

Aus 61,9 Milliarden Dollar generiert das Unternehmen einen Nettoprofit von 21,9 Milliarden Dollar. Das größte…

1 Woche ago