List of usage examples for org.jfree.ui TextAnchor TOP_CENTER
TextAnchor TOP_CENTER
To view the source code for org.jfree.ui TextAnchor TOP_CENTER.
Click Source Link
From source file:Business.Chart.ChartBP.java
public ChartBP(final String applicationTitle, String chartTitle, HospitalWorkRequest workRequest) { super(applicationTitle); series6 = new TimeSeries("Blood Pressure"); this.chartTitle = chartTitle; this.workRequest = workRequest; final XYDataset dataset1 = createDatasetBP(workRequest); final JFreeChart chart1 = createChart1(dataset1); final XYPlot plot = chart1.getXYPlot(); HospitalWorkRequest hos1 = (HospitalWorkRequest) workRequest; int age = hos1.getPerson().getAge(); int a = hos1.getPerson().getAboveBPMarker(age); int b = hos1.getPerson().getBelowBPMarker(age); ValueMarker valueMarker = new ValueMarker(a); valueMarker.setLabel("ALERT"); valueMarker.setLabelTextAnchor(TextAnchor.TOP_CENTER); valueMarker.setPaint(Color.blue); ValueMarker valueMarker1 = new ValueMarker(b); valueMarker1.setLabel("ALERT"); valueMarker1.setLabelTextAnchor(TextAnchor.TOP_CENTER); valueMarker1.setPaint(Color.BLUE); plot.addRangeMarker(valueMarker);//from w w w. j av a 2 s. c om plot.addRangeMarker(valueMarker1); }
From source file:Business.Chart.ChartHeartRate.java
public ChartHeartRate(final String applicationTitle, String chartTitle, HospitalWorkRequest workRequest) { super(applicationTitle); series = new TimeSeries("Heart Rate"); this.workRequest = workRequest; this.chartTitle = chartTitle; final XYDataset dataset = createDatasetHeartRate(workRequest); final JFreeChart chart = createChart(dataset); //final XYDataset dataset1 = createDatasetBloodPressure(workRequest ); //final JFreeChart chart1 = createChart1( dataset1 ); final XYPlot plot = chart.getXYPlot(); HospitalWorkRequest hos1 = (HospitalWorkRequest) workRequest; int age = hos1.getPerson().getAge(); int a = hos1.getPerson().getAboveHeartRateMarker(age); int b = hos1.getPerson().getBelowHeartRateMarker(age); ValueMarker valueMarker = new ValueMarker(a); valueMarker.setLabel("ALERT"); valueMarker.setLabelTextAnchor(TextAnchor.TOP_CENTER); valueMarker.setPaint(Color.blue); ValueMarker valueMarker1 = new ValueMarker(b); valueMarker1.setLabel("ALERT"); valueMarker1.setLabelTextAnchor(TextAnchor.TOP_CENTER); valueMarker1.setPaint(Color.BLUE); plot.addRangeMarker(valueMarker);/*from www .ja v a 2 s. c om*/ plot.addRangeMarker(valueMarker1); //ChartFrame frame = new ChartFrame("series chart", chart); // frame.setVisible(true); // frame.setSize(450, 350); final ChartPanel chartPanel = new ChartPanel(chart); chartPanel.setPreferredSize(new java.awt.Dimension(560, 370)); chartPanel.setMouseZoomable(true, false); setContentPane(chartPanel); getContentPane().repaint(); }
From source file:Business.Chart.ChartBloodPressure.java
public ChartBloodPressure(final String applicationTitle, String chartTitle, HospitalWorkRequest workRequest) { super(applicationTitle); series6 = new TimeSeries("Blood Pressure"); this.workRequest = workRequest; this.chartTitle = chartTitle; final XYDataset dataset6 = createDatasetBloodPressure(workRequest); final JFreeChart chart6 = createChart(dataset6); //final XYDataset dataset1 = createDatasetBloodPressure(workRequest ); //final JFreeChart chart1 = createChart1( dataset1 ); final XYPlot plot = chart6.getXYPlot(); HospitalWorkRequest hos1 = (HospitalWorkRequest) workRequest; int age = hos1.getPerson().getAge(); int a = hos1.getPerson().getAboveBPMarker(age); int b = hos1.getPerson().getBelowBPMarker(age); ValueMarker valueMarker = new ValueMarker(a); valueMarker.setLabel("ALERT"); valueMarker.setLabelTextAnchor(TextAnchor.TOP_CENTER); valueMarker.setPaint(Color.blue); ValueMarker valueMarker1 = new ValueMarker(b); valueMarker1.setLabel("ALERT"); valueMarker1.setLabelTextAnchor(TextAnchor.TOP_CENTER); valueMarker1.setPaint(Color.BLUE); plot.addRangeMarker(valueMarker);/*w w w .java 2 s . c om*/ plot.addRangeMarker(valueMarker1); //ChartFrame frame = new ChartFrame("series chart", chart); // frame.setVisible(true); // frame.setSize(450, 350); final ChartPanel chartPanel6 = new ChartPanel(chart6); chartPanel6.setPreferredSize(new java.awt.Dimension(560, 370)); chartPanel6.setMouseZoomable(true, false); setContentPane(chartPanel6); getContentPane().repaint(); }
From source file:Business.Chart.Temperature.java
public Temperature(final String applicationTitle, String chartTitle, HospitalWorkRequest workRequest) { super(applicationTitle); series3 = new TimeSeries("Temperature"); this.workRequest = workRequest; this.chartTitle = chartTitle; final XYDataset dataset3 = createDatasetTemperature(workRequest); final JFreeChart chart3 = createChart(dataset3); final XYPlot plot = chart3.getXYPlot(); HospitalWorkRequest hos1 = (HospitalWorkRequest) workRequest; int age = hos1.getPerson().getAge(); int a = hos1.getPerson().getAboveTemperatureRateMarker(age); int b = hos1.getPerson().getBelowTemperatureRateMarker(age); ValueMarker valueMarker = new ValueMarker(a); valueMarker.setLabel("ALERT"); valueMarker.setLabelTextAnchor(TextAnchor.TOP_CENTER); valueMarker.setPaint(Color.blue); ValueMarker valueMarker1 = new ValueMarker(b); valueMarker1.setLabel("ALERT"); valueMarker1.setLabelTextAnchor(TextAnchor.TOP_CENTER); valueMarker1.setPaint(Color.BLUE); plot.addRangeMarker(valueMarker);//from www . j a v a 2 s. c om plot.addRangeMarker(valueMarker1); final ChartPanel chartPanel = new ChartPanel(chart3); chartPanel.setPreferredSize(new java.awt.Dimension(560, 370)); chartPanel.setMouseZoomable(true, false); setContentPane(chartPanel); getContentPane().repaint(); }
From source file:Business.Chart.ChartRespiratory.java
public ChartRespiratory(final String applicationTitle, String chartTitle, HospitalWorkRequest workRequest) { super(applicationTitle); repaint();/*from w ww . java2s. c o m*/ series2 = new TimeSeries("Respiratory Rate"); this.workRequest = workRequest; this.chartTitle = chartTitle; final XYDataset dataset2 = createDatasetRespiratoryRate(workRequest); final JFreeChart chart2 = createChart(dataset2); final XYPlot plot = chart2.getXYPlot(); HospitalWorkRequest hos1 = (HospitalWorkRequest) workRequest; int age = hos1.getPerson().getAge(); int a = hos1.getPerson().getAboveRespirationRateMarker(age); int b = hos1.getPerson().getBelowRespirationRateMarker(age); ValueMarker valueMarker = new ValueMarker(a); valueMarker.setLabel("ALERT"); valueMarker.setLabelTextAnchor(TextAnchor.TOP_CENTER); valueMarker.setPaint(Color.blue); ValueMarker valueMarker1 = new ValueMarker(b); valueMarker1.setLabel("ALERT"); valueMarker1.setLabelTextAnchor(TextAnchor.TOP_CENTER); valueMarker1.setPaint(Color.BLUE); plot.addRangeMarker(valueMarker); plot.addRangeMarker(valueMarker1); final ChartPanel chartPanel = new ChartPanel(chart2); chartPanel.setPreferredSize(new java.awt.Dimension(560, 370)); chartPanel.setMouseZoomable(true, false); setContentPane(chartPanel); getContentPane().repaint(); }
From source file:inflor.core.plots.LogicleNumberAxis.java
@Override public List<NumberTick> refreshTicks(Graphics2D g2, AxisState state, Rectangle2D dataArea, RectangleEdge edge) { List<NumberTick> ticks = new ArrayList<>(); double[] suggestedTicks = logicle.getAxisValues(); if (suggestedTicks[0] >= 0) { double tick1Value = logicle.getMinTranformedValue(); double tick2Value = logicle.transform(Math.abs(logicle.getMinRawValue())); String label1 = this.getNumberFormatOverride().format(tick1Value); String label2 = this.getNumberFormatOverride().format(tick2Value); ticks.add(new NumberTick(tick1Value, label1, TextAnchor.TOP_CENTER, TextAnchor.TOP_CENTER, 0)); ticks.add(new NumberTick(tick2Value, label2, TextAnchor.TOP_CENTER, TextAnchor.TOP_CENTER, 0)); }/*from w w w .j a v a2 s. c o m*/ for (double value : suggestedTicks) { double td = logicle.transform(value); double tickDangerRatio = 0; if (ticks.size() >= 2) { double firstPositiveTick = logicle.inverse(ticks.get(1).getValue()); tickDangerRatio = value / firstPositiveTick; } if (tickDangerRatio < 0.5 || tickDangerRatio > 2) { String label = this.getNumberFormatOverride().format(td); NumberTick tick = new NumberTick(td, label, TextAnchor.TOP_CENTER, TextAnchor.TOP_CENTER, 0); ticks.add(tick); } } return ticks; }
From source file:grafix.graficos.eixos.EixoHorizontalComLabels.java
@Override public List refreshTicks(Graphics2D g2, AxisState state, Rectangle2D dataArea, RectangleEdge edge) { try {/*from w w w . ja v a2s . co m*/ long l1 = this.getMaximumDate().getTime(); long l2 = this.getMinimumDate().getTime(); int diasExibidos = (int) ((l1 - l2) / ref); if (diasExibidos == diasExibidosAnterior && ticksAnteriores != null) { return ticksAnteriores; // otimizacao } else { List result = new ArrayList(); int j = 0; for (int i = acao.getNumeroRegistros() - 1; i >= 0; i--) { int n = (int) (diasExibidos / QUANTIDADE_DATAS); if (j++ % n == 0) { result.add(new DateTick(acao.getRegistro(i).getDataCorrida().getStart(), new DateFormatter(new SimpleDateFormat("dd/MM/yy")) .valueToString(acao.getRegistro(i).getData().getStart()), TextAnchor.TOP_CENTER, TextAnchor.TOP_RIGHT, 0)); } else { result.add(new DateTick(acao.getRegistro(i).getDataCorrida().getStart(), "", TextAnchor.TOP_CENTER, TextAnchor.TOP_RIGHT, 0)); } } ticksAnteriores = result; diasExibidosAnterior = diasExibidos; return result; } } catch (Exception e) { return new ArrayList(); } }
From source file:fr.crnan.videso3d.trajectography.Track2DView.java
public Track2DView(VidesoTrack track) { if (track instanceof LPLNTrack) { XYSeries dataset = new XYSeries(track.getName()); List<ValueMarker> markers = new LinkedList<ValueMarker>(); double distance = 0; LPLNTrackPoint last = null;/* w w w .j a va 2 s . c om*/ for (LPLNTrackPoint p : ((LPLNTrack) track).getTrackPoints()) { if (last != null) { distance += Position.ellipsoidalDistance(last.getPosition(), p.getPosition(), Earth.WGS84_EQUATORIAL_RADIUS, Earth.WGS84_POLAR_RADIUS) / LatLonCautra.NM; } dataset.add(distance, p.getElevation() / 30.48); ValueMarker marker = new ValueMarker(distance); marker.setLabel(p.getName()); marker.setLabelAnchor(RectangleAnchor.TOP_RIGHT); marker.setLabelTextAnchor(TextAnchor.TOP_CENTER); markers.add(marker); last = p; } JFreeChart chart = ChartFactory.createXYLineChart("Coupe 2D", "NM", "FL", new XYSeriesCollection(dataset), PlotOrientation.VERTICAL, false, false, false); for (ValueMarker m : markers) { chart.getXYPlot().addDomainMarker(m); } //ajout des secteurs AIP avec des XYPolygonAnnotation Collection<Object> secteurs; AIPController controller = (AIPController) DatasManager.getController(DatasManager.Type.AIP); secteurs = controller.getObjects(AIP.CTL); for (int i = 0; i <= 600; i += 10) { last = null; Secteur3D lastSecteur = null; double lastBoundary = 0.0; for (LPLNTrackPoint point : ((LPLNTrack) track).getTrackPoints()) { Position p = new Position(point.getPosition(), i * 30.48); //calcul du secteur contenant le point en cours Iterator<Object> iterator = secteurs.iterator(); boolean contain = false; Secteur3D secteur = null; while (iterator.hasNext() && !contain) { Secteur3D temp = (Secteur3D) iterator.next(); if (temp.contains(p)) { contain = true; secteur = temp; } } //si premier point, on enregistre simplement le secteur trouv if (last == null) { lastSecteur = secteur; } else { if (lastSecteur != secteur) { //si le secteur a chang, on dessine le secteur prcdent //sauf si ce dernier n'existait pas if (lastSecteur != null) { //dans ce cas, on calcule le point d'intersection entre le secteur et le segment form par les deux points //lastSecteur != null => last !=null Set<Point2D> intersects = lastSecteur .getIntersections(new Line2D.Double(last.getLatitude(), last.getLongitude(), p.getLatitude().degrees, p.getLongitude().degrees), true); if (!intersects.isEmpty()) { Point2D intersect = intersects.iterator().next(); distance = Position.ellipsoidalDistance( new LatLonCautra(intersect.getX(), intersect.getY()), last.getPosition(), Earth.WGS84_EQUATORIAL_RADIUS, Earth.WGS84_POLAR_RADIUS) / LatLonCautra.NM; //et ajout de l'annotation XYPolygonAnnotation annotation = new XYPolygonAnnotation( new double[] { lastBoundary, i, lastBoundary + distance, i, lastBoundary + distance, i + 10, lastBoundary, i + 10 }); chart.getXYPlot().addAnnotation(annotation); lastBoundary += distance; } } lastSecteur = secteur; } } last = point; } } //espace en haut pour les marqueurs chart.getXYPlot().getRangeAxis().setUpperMargin(0.05); ChartPanel chartPanel = new ChartPanel(chart); this.setContentPane(chartPanel); this.pack(); } }
From source file:com.bdb.weather.display.day.DayHumidityPane.java
@Override protected void addAnnotations(XYPlot plot, SummaryRecord summaryRecord) { plot.clearAnnotations();/*from w w w .j av a 2 s. c o m*/ if (summaryRecord == null) return; LocalDateTime highTime = summaryRecord.getMaxOutdoorHumidityTime(); Humidity highHumidity = summaryRecord.getMaxOutdoorHumidity(); LocalDateTime lowTime = summaryRecord.getMinOutdoorHumidityTime(); Humidity lowHumidity = summaryRecord.getMinOutdoorHumidity(); if (highTime == null || highHumidity == null || lowTime == null || lowHumidity == null) return; String highAnnotation = highHumidity.toString() + Humidity.Unit.RELATIVE_HUMIDITY + " " + DisplayConstants.formatTime(highTime.toLocalTime()); String lowAnnotation = lowHumidity.toString() + Humidity.Unit.RELATIVE_HUMIDITY + " " + DisplayConstants.formatTime(lowTime.toLocalTime()); XYTextAnnotation a = new XYTextAnnotation(highAnnotation, TimeUtils.localDateTimeToEpochMillis(highTime), highHumidity.get()); a.setTextAnchor(TextAnchor.BASELINE_CENTER); plot.addAnnotation(a); a = new XYTextAnnotation(lowAnnotation, TimeUtils.localDateTimeToEpochMillis(lowTime), lowHumidity.get()); a.setTextAnchor(TextAnchor.TOP_CENTER); plot.addAnnotation(a); }
From source file:org.jfree.experimental.chart.plot.dial.DialTextAnnotation.java
/** * Creates a new instance of <code>DialTextAnnotation</code>. * /*from w w w. ja va2 s . c o m*/ * @param label the label (<code>null</code> not permitted). */ public DialTextAnnotation(String label) { if (label == null) { throw new IllegalArgumentException("Null 'label' argument."); } this.angle = -90.0; this.radius = 0.3; this.font = new Font("Dialog", Font.BOLD, 14); this.paint = Color.black; this.label = label; this.anchor = TextAnchor.TOP_CENTER; }