tutorials.de Buch-Aktion 02/2012
ERLEDIGT
NEIN
ANTWORTEN
10
ZUGRIFFE
4430
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Butt Butt ist offline Grünschnabel
    Registriert seit
    May 2004
    Beiträge
    4
    Hallo,

    für ein projekt soll ich ein passendes Diagramm programmieren.
    dabei soll nicht nur gezeichnet werden, sondern die daten systematisch in bildschirmkoordinaten konvertiert werden, mit awt oder swing.
    daten sind egal, es geht nur ums diagramm.
    habe zwar ein java-buch, aber da steht überhaupt nichts über diagramme, deswegen wende ich mich an euch.

    wenn noch etwas unklar ist, bitte beescheid sagen.

    für alle hilfen bedanke ich mich schon jetzt mal.
    Danke
     

  2. #2
    Avatar von Franz Degenhardt
    Franz Degenhardt Franz Degenhardt ist offline Mitglied Brokat
    Registriert seit
    Mar 2004
    Ort
    Köln
    Beiträge
    375
    Was für Werte hast du und was für eine Art von Diagramm willst du erzeugen?

    Wenn du z.B. das Alter von Menschen und deren Anzahl von Gehirnzellen hast, trägst du einfach für jedes Wertepaar ein Punkt in ein Koordinatensystem ein. Das Koordinatensystem musst du dir natürlich selber bauen.
    Bei einem Säulendiagramm malst du statt einem Punkt eine Säule.

    Und was genau ist dein Problem, kennst du dich mit guis in Java aus?

    Grüsse TrueSun
     

  3. #3
    Registriert seit
    Jun 2002
    Ort
    Saarbrücken (Saarland)
    Beiträge
    9.724
    Blog-Einträge
    29
    Hallo!

    Schau dir doch mal jFreeCHart an: http://www.jfree.org/jfreechart/index.html

    Gruß Tom
     

  4. #4
    Butt Butt ist offline Grünschnabel
    Registriert seit
    May 2004
    Beiträge
    4
    ja, danke erstmal.
    hat mir sehr geholfen der link.
    sorry das die frage n bißchen unklar war.

    vielen dank
     

  5. #5
    Registriert seit
    Apr 2004
    Ort
    Ruhrgebiet
    Beiträge
    1.582
    Original geschrieben von Thomas Darimont
    Hallo!

    Schau dir doch mal jFreeCHart an: http://www.jfree.org/jfreechart/index.html

    Gruß Tom
    JFreeChart ist ein äusserst mächtiges Tool, dazu noch nach belieben veränderbar. Ich habe mich mal ca. ein halbes Jahr daran ausgetobt, das ist echt klasse.
     

  6. #6
    hankenberge hankenberge ist offline Mitglied Silber
    Registriert seit
    Aug 2004
    Beiträge
    52
    Original geschrieben von Snape
    JFreeChart ist ein äusserst mächtiges Tool, dazu noch nach belieben veränderbar. Ich habe mich mal ca. ein halbes Jahr daran ausgetobt, das ist echt klasse.
    Hey Snape,

    kurze Frage. Hast du das Memory Usage Demo vei jefreechart verwendet? es ist genau das was ich suche, aber leider find eich keine Infos darüber wie es erstellt worden ist.
    oder hat jemand eine idee,wie ich den Speicher und die prozesserauslastung dynamisch in einem Diagramm darstellen kann?

    Danke
     

  7. #7
    Registriert seit
    Apr 2004
    Ort
    Ruhrgebiet
    Beiträge
    1.582
    Original geschrieben von hankenberge
    >Hey Snape,
    >kurze Frage. Hast du das Memory Usage Demo vei jefreechart verwendet?

    Nein, waren ausschliesslich StackedVerticalBar.

    >es ist genau das was ich suche, aber leider find eich keine Infos darüber wie es erstellt worden ist.

    Ist das nicht im Quellcode ersichtlich?

    >oder hat jemand eine idee,wie ich den Speicher und die prozesserauslastung dynamisch in einem Diagramm darstellen kann?
    >Danke

    Hast Du schon mal im JFreeChart-Forum geschaut/gefragt?
     

  8. #8
    hankenberge hankenberge ist offline Mitglied Silber
    Registriert seit
    Aug 2004
    Beiträge
    52
    Ich habe mich da auch umgesehen, da haben mehere zu diesem Thema angefragt, aber keiner konnte wohl antworten. leider gibt es zu dem Chart keinen Quellcode, da es als beispiel nur auf der HP zu sehen ist, aber nicht in der demo.jar auftaucht.

    naja hätte ja sein können.

    Danke
     

  9. #9
    hankenberge hankenberge ist offline Mitglied Silber
    Registriert seit
    Aug 2004
    Beiträge
    52
    Ich habe den Code für das MemoryUsage gefunden.

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    
     
    * ======================================
        * JFreeChart : a free Java chart library
        * ======================================
        *
        * Project Info: <[url]http://www.object-refinery.com/jfreechart/index.html[/url]>
        * Project Lead: David Gilbert (david.gilbert@object-refinery.com);
        *
        * (C) Copyright 2000-2003, by Object Refinery Limited and Contributors.
        *
        * This library is free software; you can redistribute it and/or modify it under the terms
        * of the GNU Lesser General Public License as published by the Free Software Foundation;
        * either version 2.1 of the License, or (at your option) any later version.
        *
        * This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
        * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
        * See the GNU Lesser General Public License for more details.
        *
        * You should have received a copy of the GNU Lesser General Public License along with this
        * library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330,
        * Boston, MA 02111-1307, USA.
        *
        * ----------------
        * MemoryUsage.java
        * ----------------
        * (C) Copyright 2002, 2003, by Object Refinery Limited and Contributors.
        *
        * Original Author: Tony Bianchini;
        * Contributor(s): David Gilbert;
        *
        * $Id: MemoryUsage.java,v 1.4 2002/10/16 14:17:55 mungady Exp $
        *
        * Changes
        * -------
        * 10-Sep-2002 : Version 1, based on code by Tony Bianchini (DG);
        * 11-Oct-2002 : Fixed errors reported by Checkstyle (DG);
        * 16-Oct-2002 : Removed redundant attributes (DG);
        * 18-Oct-2002 : Moved to com.jrefinery.chart.demo.premium package (DG);
        * 25-Apr-2003 : Updated for JFreeChart 0.9.8, and moved to com.jrefinery.chart.demo package (DG);
        *
        */
     
        import java.awt.BasicStroke;
        import java.awt.BorderLayout;
        import java.awt.Color;
        import java.awt.event.ActionEvent;
        import java.awt.event.ActionListener;
        import java.awt.event.WindowAdapter;
        import java.awt.event.WindowEvent;
     
        import javax.swing.JFrame;
        import javax.swing.JPanel;
        import javax.swing.Timer;
     
        import org.jfree.chart.ChartPanel;
        import org.jfree.chart.JFreeChart;
        import org.jfree.chart.axis.DateAxis;
        import org.jfree.chart.axis.NumberAxis;
        import org.jfree.chart.plot.XYPlot;
        import org.jfree.chart.renderer.DefaultXYItemRenderer;
        import org.jfree.chart.renderer.XYItemRenderer;
        import org.jfree.data.time.Millisecond;
        import org.jfree.data.time.TimeSeries;
        import org.jfree.data.time.TimeSeriesCollection;
     
        /**
        * A demo application showing a dynamically updated chart that displays the current JVM memory
        * usage.
        *
        * @author Tony Bianchini
        * @author David Gilbert
        */
        public class MemoryUsage extends JPanel {
     
        /** Time series for total memory used. */
        private TimeSeries total;
     
        /** Time series for free memory. */
        private TimeSeries free;
     
        /**
        * Creates a new application.
        */
        public MemoryUsage() {
     
        super(new BorderLayout());
     
    //   create two series that automatically discard data more than 30 seconds old...
        this.total = new TimeSeries("Total", Millisecond.class);
        this.total.setHistoryCount(30000);
        this.free = new TimeSeries("Free", Millisecond.class);
        this.free.setHistoryCount(30000);
        TimeSeriesCollection dataset = new TimeSeriesCollection();
        dataset.addSeries(total);
        dataset.addSeries(free);
     
        DateAxis domain = new DateAxis("Time");
        NumberAxis range = new NumberAxis("Memory");
     
        XYItemRenderer renderer = new DefaultXYItemRenderer();
        renderer.setSeriesPaint(0, Color.red);
        renderer.setSeriesPaint(1, Color.green);
        renderer.setBaseStroke(
        new BasicStroke(2f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL)
        );
        XYPlot xyplot = new XYPlot(dataset, domain, range, renderer);
        xyplot.setBackgroundPaint(Color.black);
     
        domain.setAutoRange(true);
        domain.setLowerMargin(0.0);
        domain.setUpperMargin(0.0);
        domain.setTickLabelsVisible(true);
     
        range.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
     
        JFreeChart chart = new JFreeChart(
        "Memory Usage", 
        JFreeChart.DEFAULT_TITLE_FONT,
        xyplot, 
        true
        );
        ChartPanel chartPanel = new ChartPanel(chart);
        add(chartPanel);
     
        }
     
        /**
        * Adds an observation to the 'total memory' time series.
        *
        * @param y the total memory used.
        */
        private void addTotalObservation(double y) {
        total.add(new Millisecond(), y);
        }
     
        /**
        * Adds an observation to the 'free memory' time series.
        *
        * @param y the free memory.
        */
        private void addFreeObservation(double y) {
        free.add(new Millisecond(), y);
        }
     
        /**
        * The data generator.
        */
        class DataGenerator extends Timer implements ActionListener {
     
        /**
        * Constructor.
        */
        DataGenerator() {
        super(100, null);
        addActionListener(this);
        }
     
        /**
        * Adds a new free/total memory reading to the dataset.
        *
        * @param event the action event.
        */
        public void actionPerformed(ActionEvent event) {
        long f = Runtime.getRuntime().freeMemory();
        long t = Runtime.getRuntime().totalMemory();
        addTotalObservation(t);
        addFreeObservation(f);
        }
     
        }
     
        /**
        * Entry point for the sample application.
        *
        * @param args ignored.
        */
        public static void main(String[] args) {
     
        JFrame frame = new JFrame("Memory Usage Demo");
        MemoryUsage panel = new MemoryUsage();
        frame.getContentPane().add(panel, BorderLayout.CENTER);
        frame.setBounds(200, 120, 600, 280);
        frame.setVisible(true);
        panel.new DataGenerator().start();
     
        frame.addWindowListener(new WindowAdapter() {
        public void windowClosing(WindowEvent e) {
        System.exit(0);
        }
        });
        }
     
        }

    habe nur das Problem das ich folgende Fehlermeldung erhalte:

    The type org.free.util.PublicClonable sannot be resolved. It is indirectly referencent by required .class file
    das passiert an der stelle :
    DateAxis domain = new DateAxis("Time");
    weiss jemand was das bedeuten soll?

    danke
     

  10. #10
    hankenberge hankenberge ist offline Mitglied Silber
    Registriert seit
    Aug 2004
    Beiträge
    52
    habe von jfree die antowrt erhalten.
    als jemand es mal verwenden möchte
    viel spass

    PublicCloneable is in the JCommon class library, so make sure you have the jcommon jar file on your classpath.

    Regards,

    Dave Gilbert
    JFreeChart Project Leader

    To purchase the JFreeChart Developer Guide, please see http://www.object-refinery.com/jfreechart/guide.html
     

  11. #11
    Registriert seit
    Apr 2004
    Ort
    Ruhrgebiet
    Beiträge
    1.582
    Original geschrieben von hankenberge
    habe von jfree die antowrt erhalten.
    als jemand es mal verwenden möchte
    viel spass
    Dachte ich mir doch. Dave Gilbert ist sehr hilfsbereit.
    Prima, dass es nun funktioniert.
     

Ähnliche Themen

  1. E/R Diagramm, brauche Ratschlag
    Von Anaxarch im Forum Relationale Datenbanksysteme
    Antworten: 3
    Letzter Beitrag: 11.03.10, 15:21
  2. Antworten: 0
    Letzter Beitrag: 07.08.07, 18:12
  3. Brauche Hilfe bei einem Excel-Diagramm
    Von lp-chester im Forum Office-Anwendungen
    Antworten: 3
    Letzter Beitrag: 31.08.05, 22:18
  4. Antworten: 8
    Letzter Beitrag: 14.06.04, 10:37
  5. [HILFE] Brauche dringend Hilfe zum Thema $_SESSION
    Von grashnaknieswurz im Forum PHP
    Antworten: 1
    Letzter Beitrag: 19.02.04, 14:48