Swing JFreechart subtitle formatieren

ottens

Aktives Mitglied
Hallo Liebe Leute,

ich brauche euere Hilfe und zwar ich soll ein Diagramm mit JFreechart basteln
unten im Diagramm soll links und rechts zwei Texte (String) stehen ?

hat jemand nen Vorschlag bitte ?

Lg

ottens:rtfm:
 
H

Harry Kehn

Gast
Hier ein Beispielcode
Java:
public class SimpleXYPlot{
	public static void main(String[] args){
	DefaultXYDataset dataset = new DefaultXYDataset();
	dataset.addSeries("Values",new double[][]{{0, 1}, {0, 1}});		
	ValueAxis xAxis = new NumberAxis("x axis");
        NumberAxis yAxis = new NumberAxis("y axis");
        XYItemRenderer renderer = new XYLineAndShapeRenderer();
	XYPlot plot = new XYPlot(dataset, xAxis, yAxis, renderer);
	JFreeChart chart = new JFreeChart(plot);
	BlockContainer bc = new BlockContainer(new BorderArrangement());
	bc.add(new LabelBlock("Links unten"), RectangleEdge.LEFT);
        bc.add(new LabelBlock("Rechts unten"), RectangleEdge.RIGHT);
        bc.add(new EmptyBlock(1000,10));
        CompositeTitle edgeTitle = new CompositeTitle();
        edgeTitle.setPosition(RectangleEdge.BOTTOM);
        edgeTitle.setTitleContainer(bc);
        chart.addSubtitle(0,edgeTitle);
        JFrame frame = new JFrame();
	frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	frame.getContentPane().add(new ChartPanel(chart));
        frame.pack();
        frame.setVisible(true);
        
	}
}
und ein paar Hinweise:
1. Die Reihenfolge zwischen edgeTitle.setPosition(RectangleEdge.BOTTOM) und edgeTitle.setTitleContainer(bc) ist wichtig. Werden diese Anweisungen in der umgekerten Reihenfolge ausgeführt, werden die beiden LabelBlocks unmittelbar hintereinander links unten im Chart angezeigt. Grund: bei edgeTitle.setTitleContainer(bc) überschreibt der CompositeTitle das BorderArrangement des BlockContainers mit seinem eigenen Arrangement, wobei die Positionsinformationen der LabelBlocks und des EmptyBlocks verloren gehen.
2. Die 0 bei chart.addSubtitle(0,edgeTitle) ist wichtig. Ein JFreeChart verwaltet eine Liste von Title-Objekten, an die mit der addTitle(Title t) Methode neue Title angefügt oder mit addTitle(int index, Title t) an einer Stelle eingefügt werden können. Diese Liste mit Title-Objekten enthält auch die Legende. Die Title´s werden von aussen nach innen gezeichnet, und zwar in der Reihenfolge, in der sie in der Liste gespeichert sind. "Von Aussen nach innen" heisst, dass mehrere Title an der UNterseite des Charts von unten nach oben gerendert werden, Title´s an der rechten Seite des Charts von rechts nach links etc.Wenn du den CompositeTitle einfach mit addSubtitle(edgeTitle) anfügst, wird er über der Legende gezeichnet, so dass die LabelBlocks nicht mehr ganz unten links und rechts positioniert sind. Durch Angabe der 0 wurde der CompositeTitle vor der Legene in die Title-Liste eingefügt und unterhabl der Legende gezeichnet.
 

ottens

Aktives Mitglied
Hallo Herr Harry Kehn,

ich freue mich auf die Antwort es hat funktioniert brauche nur die Zustimmung
auf Arbeit, sorry habe gerade die Lösung gesehen bedanke mich ganz herzlich.

aber kann man irgendwie die Schriftgröße durch Fontmetrics manipulieren ??
bzw wie schafft man hier ein GraphicsObjekt ohne SWING zu benutzen ??
also ohne paint(Graphics g) und ohne paintComponent(Graphics g).

LG

Ottens
 

Harry Kane

Top Contributor
Die Schriftgröse eines LabelBlocks kann entweder im KOnstrucktor vorgegeben werden oder später mit setFont(java.awt.Font) geändert werden.
Die Benutzung eines Graphics2D ausserhaln von Swing ist sehr einfach möglich. Ich nehme an du willst Bilder erstellen? versuche mal
Java:
JFreeChart chart = new JFreeChart(plot);
BufferedImage image = new BufferedImage(450,300,BufferedImage.TYPE_4BYTE_ABGR);
Graphics2D g2 = image.createGraphics();
chart.draw(g2, new Rectangle(450, 300));
ImageIO.write(image, "png", new File("filename.PNG"));}}
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
C JFreeChart X-Achse Werte skalieren, begrenzen, zoomen AWT, Swing, JavaFX & SWT 5
H JFreeChart BarDiagramm Balken der gleichen Serie unterschiedliche Farbe zuordnen AWT, Swing, JavaFX & SWT 2
H JFreeChart - DemoDataSetFactory Probleme AWT, Swing, JavaFX & SWT 1
H JFreeChart Charts überlagern AWT, Swing, JavaFX & SWT 2
C JFreeChart x-Achse mit absteigenden Werten AWT, Swing, JavaFX & SWT 1
K JFreeChart nicht ohne BarChartDemo startklar? AWT, Swing, JavaFX & SWT 5
T 2D-Grafik JFreeChart mehrere Y-Achsen AWT, Swing, JavaFX & SWT 2
D Swing JFreeChart Crosshair Label - setPreferredSize oder ähnliches, aber wo ? AWT, Swing, JavaFX & SWT 1
N jFreeChart einzelne Punkte anwählen und Formatieren AWT, Swing, JavaFX & SWT 0
B JFreeChart Gantt Höhe Tasks AWT, Swing, JavaFX & SWT 1
V JFreeChart: Tooltip auf Knopfdruck anzeigen AWT, Swing, JavaFX & SWT 2
V JFreechart: In Linechart Linien einzeichnen und Bereiche färben AWT, Swing, JavaFX & SWT 4
M In JFreeChart Geraden erzeugen AWT, Swing, JavaFX & SWT 11
M JFreechart Zoom out AWT, Swing, JavaFX & SWT 2
M Swing JFreechart X-Achse Tick auslesen AWT, Swing, JavaFX & SWT 13
M Swing JFreechart zoom x-achse neue Werte AWT, Swing, JavaFX & SWT 4
M JFreeChart neu zeichnen sich Wenn Jtable sich ändert AWT, Swing, JavaFX & SWT 5
Z Diagramm mit jfreechart quadratisch erstellen AWT, Swing, JavaFX & SWT 1
D JFreeChart range der Y Achse verändern. AWT, Swing, JavaFX & SWT 1
G JFreeChart - SetSeriesColor Problem AWT, Swing, JavaFX & SWT 3
K 2D-Grafik JFreeChart plot.setBackgroundImage() AWT, Swing, JavaFX & SWT 1
K 2D-Grafik JFreeChart DateAxis AWT, Swing, JavaFX & SWT 9
T Event Handling JFreeChart Update AWT, Swing, JavaFX & SWT 2
A JFreeChart BarChart invertierte anzeige oder werte bereich von-bis AWT, Swing, JavaFX & SWT 4
Farbtopf Live update JFreeChart AWT, Swing, JavaFX & SWT 3
H Swing JfreeChart aktualisieren - mit daten aus thread AWT, Swing, JavaFX & SWT 3
D JFreeChart - aktuelle code beispiele AWT, Swing, JavaFX & SWT 11
M JFreeChart in ein File schreiben (bzw. JFrame in ein File Schreiben) AWT, Swing, JavaFX & SWT 2
A JFreeChart in GUI AWT, Swing, JavaFX & SWT 3
E JFreeChart: Timeseries-Chart und Area-Chart "überlappen" lassen AWT, Swing, JavaFX & SWT 6
B JFreeChart-Erweiterungen AWT, Swing, JavaFX & SWT 4
E JFreeChart in einer dynamischen Aufzeichnung neue Serien hinzufügen? AWT, Swing, JavaFX & SWT 7
I XML - JFreeChart AWT, Swing, JavaFX & SWT 15
N Dynamische JFreechart updated UI nicht AWT, Swing, JavaFX & SWT 5
S JFreeChart - Schriftgröße der Legende AWT, Swing, JavaFX & SWT 2
N JFreeChart: Plot soll mit skalieren AWT, Swing, JavaFX & SWT 5
R JFreeChart Plots AWT, Swing, JavaFX & SWT 6
J JFreechart spezielles Balkendiagramm AWT, Swing, JavaFX & SWT 2
R JFreeChart: nur jeden n-ten Wert auf der X-Achse anzeigen AWT, Swing, JavaFX & SWT 5
R JFreeChart aktualisieren wenn sich die Ausgangsdaten ändern AWT, Swing, JavaFX & SWT 8
T JFreeChart Linine einzeichnen AWT, Swing, JavaFX & SWT 2
M JFreeChart Ausrichtung der Balken AWT, Swing, JavaFX & SWT 2
R jFreeChart in eine NetBeans Projekt integrieren AWT, Swing, JavaFX & SWT 24
D JFreeChart Breite (width) ändern AWT, Swing, JavaFX & SWT 6
A Swing JFreeChart, Gantt, Schichtplan AWT, Swing, JavaFX & SWT 3
R JFreeChart Skalierung zur Laufzeit ändern AWT, Swing, JavaFX & SWT 7
F Wie lade ich eine CategoryDataset aus XML ins JFreeChart? AWT, Swing, JavaFX & SWT 9
J JFreeChart - mehrere Y-Achsen AWT, Swing, JavaFX & SWT 2
A JFreeChart: 2 X-Achsen für ein Dataset AWT, Swing, JavaFX & SWT 2
T JFreeChart export Problem AWT, Swing, JavaFX & SWT 4
S JFreeChart Achse immer sichtbar AWT, Swing, JavaFX & SWT 2
D JFreechart maximalangezeigter Wertebereich AWT, Swing, JavaFX & SWT 3
B AWT [JFreeChart] malt nicht so wie ich will :-( AWT, Swing, JavaFX & SWT 2
B JFreeChart Balkendiagramm ActionEvent AWT, Swing, JavaFX & SWT 2
L Labels sichtbar - JFreeChart AWT, Swing, JavaFX & SWT 5
A Schachbrettartiges Diagramm mit JFreeChart AWT, Swing, JavaFX & SWT 4
E JFreeChart AWT, Swing, JavaFX & SWT 2
L Gantt Chart - JFreeChart AWT, Swing, JavaFX & SWT 5
K JFreeChart im JScrollPane ausblenden AWT, Swing, JavaFX & SWT 2
L JFreeChart Labelrotation AWT, Swing, JavaFX & SWT 2
L JFreeChart Farbe von Balken AWT, Swing, JavaFX & SWT 5
L JFreeChart Balkenanordnung AWT, Swing, JavaFX & SWT 10
L JFreeChart Achsenskalierung AWT, Swing, JavaFX & SWT 4
L JFreeChart - Dataset befüllen AWT, Swing, JavaFX & SWT 2
L JFreeChart - Line Shapes AWT, Swing, JavaFX & SWT 15
N JFreeChart - Basics AWT, Swing, JavaFX & SWT 2
L NullPointerException JFreeChart AWT, Swing, JavaFX & SWT 10
L JFreeChart - Legende vertikal AWT, Swing, JavaFX & SWT 5
L JFreeChart - Linienstärke einstellen AWT, Swing, JavaFX & SWT 2
L JFreeChart Einstellungen AWT, Swing, JavaFX & SWT 22
L JFreeChart - Gitterfarbe schwarz AWT, Swing, JavaFX & SWT 4
L JFreeChart StackedBar + Line-Chart kombinieren AWT, Swing, JavaFX & SWT 4
L JFreeChart - Performance bei PNG-Erstellung AWT, Swing, JavaFX & SWT 5
L JFreeChart - Legende beliebig positionieren AWT, Swing, JavaFX & SWT 16
G JFreechart Balken einfärben AWT, Swing, JavaFX & SWT 6
F Probleme mit NumberAxis bei JFreeChart AWT, Swing, JavaFX & SWT 5
G jfreechart (Diagramm speichern mit ein vorgegebenen Namen) AWT, Swing, JavaFX & SWT 6
S JFreeChart neu zeichnen sich das Datenset geändert hat. AWT, Swing, JavaFX & SWT 4
K JFreeChart Eigentschaften des Charts ändern AWT, Swing, JavaFX & SWT 8
G JFreeChart und das updaten AWT, Swing, JavaFX & SWT 7
G Ausser Jfreechart, Chart Programme? AWT, Swing, JavaFX & SWT 11
S Dimensionen JFreeChart AWT, Swing, JavaFX & SWT 5
S JFreeChart Stufendiagramm AWT, Swing, JavaFX & SWT 2
H Problem beim zeichen eines TimeSeriesChart mit jfreechart AWT, Swing, JavaFX & SWT 5
K JFreeChart: Platz zwischen Balken AWT, Swing, JavaFX & SWT 3
M JFreeChart Handbuch? AWT, Swing, JavaFX & SWT 8
P JFreeChart - TimeSeriesDiagram AWT, Swing, JavaFX & SWT 2
S GridBagLayout Felder formatieren AWT, Swing, JavaFX & SWT 1
L JavaFX TableColumn formatieren? AWT, Swing, JavaFX & SWT 3
M Strings im JTextPane vergleichen und mit StyledDocument formatieren AWT, Swing, JavaFX & SWT 3
G .txt-Datei einlesen /formatieren in JTextfield ?? AWT, Swing, JavaFX & SWT 8
M JavaFX TextArea richtig formatieren AWT, Swing, JavaFX & SWT 4
B 2D-Grafik String drehen/platzieren/formatieren in bestimmten Bereich AWT, Swing, JavaFX & SWT 1
M Swing JLabel mit fester größe nachträglich formatieren AWT, Swing, JavaFX & SWT 2
G JavaFX TextField Eingabe formatieren/einschränken AWT, Swing, JavaFX & SWT 2
M Swing JEditorPane: Text formatieren AWT, Swing, JavaFX & SWT 2
H Komponenten anwendugsweit formatieren AWT, Swing, JavaFX & SWT 6
N Zellen einer JTable unterschiedlich formatieren AWT, Swing, JavaFX & SWT 7
trash Stringinhalt formatieren AWT, Swing, JavaFX & SWT 3
I Schrift und Farbe formatieren, und zwar pro Linie... AWT, Swing, JavaFX & SWT 4

Ähnliche Java Themen

Neue Themen


Oben