S
schäfi
Gast
Hallo liebe Forum Mitglieder,
ich habe versucht mit Hilfe des JFreeChart's ein Liniendiagramm zu erstellen. Das hat auch super und schnell geklappt. Jetzt sitze ich schon seid ein paar Tagen daran, NULL Werte zu Überbrücken.
Kleines Beispiel:
Ich habe auf der Kategorienachse Die Zeit in Tagen dargestellt:
2008-01-01
2008-01-02
2008-01-03
...
Auf der Werteachse habe ich dann entsprechend meine Werte
100
150
134
...
Wenn ich jetzt für einen Tag keinen Wert habe, werden meine Punkte leider nicht mehr miteinander verbunden,....
Ich habe meinen Code zum posten ein bischen geändert. In diesem Beispiel würde ich die Datenpunkte für den 01 und 03 Januar 2008 angezeigt bekommen, sie würden aber nicht miteinander verbunden :-(
Kann mir dabei evtl. jemand helfen?
ich habe versucht mit Hilfe des JFreeChart's ein Liniendiagramm zu erstellen. Das hat auch super und schnell geklappt. Jetzt sitze ich schon seid ein paar Tagen daran, NULL Werte zu Überbrücken.
Kleines Beispiel:
Ich habe auf der Kategorienachse Die Zeit in Tagen dargestellt:
2008-01-01
2008-01-02
2008-01-03
...
Auf der Werteachse habe ich dann entsprechend meine Werte
100
150
134
...
Wenn ich jetzt für einen Tag keinen Wert habe, werden meine Punkte leider nicht mehr miteinander verbunden,....
Ich habe meinen Code zum posten ein bischen geändert. In diesem Beispiel würde ich die Datenpunkte für den 01 und 03 Januar 2008 angezeigt bekommen, sie würden aber nicht miteinander verbunden :-(
Kann mir dabei evtl. jemand helfen?
Code:
...
daten[0][0] = "2008-01-01";
daten[1][0] = "2008-01-02";
daten[2][0] = "2008-01-03";
daten[0][2] = "120";
daten[1][2] = "";
daten[2][2] = "300";
if (daten[i][0] != null) {
CategoryDataset1.addValue(150, "Max", daten[i][0]);
if (daten[i][2] != null) {
CategoryDataset1.addValue(Integer.valueOf(daten[i][2]), "Kategorie 01", daten[i][0]);
}
}
JFreeChart chart2 = ChartFactory.createLineChart(
"Titel",
"",
"Beschriftung Value Achse",
CategoryDataset1,//Dataset
PlotOrientation.VERTICAL,
true,
false,
false);
CategoryPlot categoryplot = chart2.getCategoryPlot();
CategoryAxis domainAxis = categoryplot.getDomainAxis();
domainAxis.setCategoryLabelPositions(
CategoryLabelPositions.createUpRotationLabelPositions(45)
);
LineAndShapeRenderer renderer = (LineAndShapeRenderer)categoryplot.getRenderer();
renderer.setBaseLinesVisible(true);
renderer.setDrawOutlines(true);
renderer.setSeriesShapesVisible(1, true);
renderer.setSeriesShapesVisible(2, true);
renderer.setSeriesShapesVisible(3, true);
renderer.setSeriesShapesVisible(4, true);
renderer.setBaseLinesVisible(true);
renderer.setBaseShapesVisible(false) ;
ChartPanel cPanel = new ChartPanel(chart2);
cPanel.setSize(new java.awt.Dimension(400,450));
cPanel.setMinimumDrawWidth(200);
cPanel.setVisible(true);
jPanel2.add(cPanel);