Example usage for org.jfree.chart.plot Marker setStroke

List of usage examples for org.jfree.chart.plot Marker setStroke

Introduction

In this page you can find the example usage for org.jfree.chart.plot Marker setStroke.

Prototype

public void setStroke(Stroke stroke) 

Source Link

Document

Sets the stroke and sends a MarkerChangeEvent to all registered listeners.

Usage

From source file:no.met.jtimeseries.chart.ChartPlotter.java

public void addDomainMarkers(Date start, Date stop, TimeZone timeZone, Locale locale) {
    if (!addedDomainMarkers) {
        //make a one hour by one hour time list
        //The reason is that not all the data are hour by hour
        //domainMarkers will not mark labels when no date at clock 00:00

        List<Date> time = getTimeHourByHour(start, stop);
        // set the markers
        Map<Long, String> domainMarkers = getDomainMarkersWithLabel(time, timeZone, locale);
        for (Map.Entry<Long, String> entry : domainMarkers.entrySet()) {
            Long timeInMilli = entry.getKey();
            String label = entry.getValue();
            final Marker originalEnd = new ValueMarker(timeInMilli);
            originalEnd.setPaint(Color.DARK_GRAY);
            originalEnd.setStroke(new BasicStroke(1.0f));
            originalEnd.setLabel(label);//Arial Hebrew, SansSerif
            originalEnd.setLabelFont(new Font("Arial", Font.PLAIN, 14));
            originalEnd.setLabelAnchor(RectangleAnchor.TOP_RIGHT);
            originalEnd.setLabelTextAnchor(TextAnchor.TOP_LEFT);
            plot.addDomainMarker(originalEnd, Layer.BACKGROUND);
            setAddedDomainMarkers(true);
        }// www  .j  a  v a2 s.co m

    }
}

From source file:ch.algotrader.client.chart.ChartTab.java

private void initMarker(SeriesDefinitionVO seriesDefinition) {

    final MarkerDefinitionVO markerDefinition = (MarkerDefinitionVO) seriesDefinition;

    final Marker marker;
    if (markerDefinition.isInterval()) {
        marker = new IntervalMarker(0, 0);
        marker.setLabelAnchor(RectangleAnchor.BOTTOM_RIGHT); // position of the label
        marker.setLabelTextAnchor(TextAnchor.BOTTOM_RIGHT); // position of the text within the label
    } else {/*  w  w  w  . j a va 2s.  c om*/
        marker = new ValueMarker(0);
        marker.setLabelAnchor(RectangleAnchor.TOP_RIGHT);
        marker.setLabelTextAnchor(TextAnchor.BOTTOM_RIGHT);
    }

    marker.setPaint(getColor(markerDefinition.getColor()));
    marker.setLabel(markerDefinition.getLabel());
    marker.setLabelFont(new Font("SansSerif", 0, 9));

    if (seriesDefinition.isDashed()) {
        marker.setStroke(new BasicStroke(1.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER, 10.0f,
                new float[] { 5.0f }, 0.0f));
    } else {
        marker.setStroke(new BasicStroke(1.0f));
    }

    getPlot().addRangeMarker(marker, markerDefinition.isInterval() ? Layer.BACKGROUND : Layer.FOREGROUND);

    this.markers.put(markerDefinition.getName(), marker);
    this.markersSelectionStatus.put(markerDefinition.getName(), seriesDefinition.isSelected());

    // add the menu item
    JCheckBoxMenuItem menuItem = new JCheckBoxMenuItem(seriesDefinition.getLabel());
    menuItem.setSelected(seriesDefinition.isSelected());
    menuItem.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent e) {
            resetAxis();
            boolean selected = ((JCheckBoxMenuItem) e.getSource()).isSelected();
            ChartTab.this.markersSelectionStatus.put(markerDefinition.getName(), selected);
            if (selected) {
                if (marker instanceof ValueMarker) {
                    marker.setAlpha(1.0f);
                } else {
                    marker.setAlpha(0.5f);
                }
            } else {
                marker.setAlpha(0);
            }
            initAxis();
        }
    });
    this.getPopupMenu().add(menuItem);
}

From source file:desmoj.extensions.visualization2d.engine.modelGrafic.StatisticGrafic.java

/**
 * Update of animation type StatisticGrafic.ANIMATION_Histogram
 * @throws ModelException/*from  w  w w  .ja  v a  2 s. com*/
 */
private void updateHistogram() throws ModelException {
    Marker meanMarker, minMarker, maxMarker;
    double mean, min0, max0;
    XYPlot plot = this.chart.getXYPlot();
    String domainAxisLabel = "Observations  ";
    switch (this.statistic.getTypeIndex()) {
    case Statistic.INDEX_None:
        break;
    case Statistic.INDEX_Min_Max:
        plot.clearDomainMarkers();
        min0 = statistic.getMin();
        max0 = statistic.getMax();
        if (!Double.isNaN(min0)) {
            minMarker = new ValueMarker(min0);
            minMarker.setPaint(StatisticGrafic.DIAGRAM_MARKER_MIN_MAX);
            minMarker.setStroke(new BasicStroke(2.0f));
            plot.addDomainMarker(minMarker, Layer.FOREGROUND);
        }
        if (!Double.isNaN(max0)) {
            maxMarker = new ValueMarker(max0);
            maxMarker.setPaint(StatisticGrafic.DIAGRAM_MARKER_MIN_MAX);
            maxMarker.setStroke(new BasicStroke(2.0f));
            plot.addDomainMarker(maxMarker, Layer.FOREGROUND);
        }
        domainAxisLabel += "(min - max)";
        break;
    case Statistic.INDEX_Mean_StdDev:
        plot.clearDomainMarkers();
        min0 = statistic.getMean() - statistic.getStdDev();
        max0 = statistic.getMean() + statistic.getStdDev();
        mean = statistic.getMean();
        if (!Double.isNaN(mean)) {
            meanMarker = new ValueMarker(mean);
            meanMarker.setPaint(StatisticGrafic.DIAGRAM_MARKER_MEAN);
            meanMarker.setStroke(new BasicStroke(2.0f));
            plot.addDomainMarker(meanMarker, Layer.FOREGROUND);
        }
        if (!Double.isNaN(min0)) {
            minMarker = new ValueMarker(min0);
            minMarker.setPaint(StatisticGrafic.DIAGRAM_MARKER_STD_DEV);
            minMarker.setStroke(new BasicStroke(2.0f));
            plot.addDomainMarker(minMarker, Layer.FOREGROUND);
        }
        if (!Double.isNaN(max0)) {
            maxMarker = new ValueMarker(max0);
            maxMarker.setPaint(StatisticGrafic.DIAGRAM_MARKER_STD_DEV);
            maxMarker.setStroke(new BasicStroke(2.0f));
            plot.addDomainMarker(maxMarker, Layer.FOREGROUND);
        }
        domainAxisLabel += "(\u03BC-\u03C3 - mean - \u03BC+\u03C3)";
        break;
    }
    this.buildHistogramAxisFormat(plot, domainAxisLabel);
}

From source file:desmoj.extensions.visualization2d.engine.modelGrafic.StatisticGrafic.java

/**
 * Update of animation type StatisticGrafic.ANIMATION_TimeValueDiagram
 * @throws ModelException/*ww  w .ja  v a 2s  .  co  m*/
 */
private void updateTimeValueDiagram() throws ModelException {
    Marker meanMarker, minMarker, maxMarker;
    double mean, min0, max0;
    XYPlot plot = this.chart.getXYPlot();
    String rangeAxisLabel = "";
    switch (this.statistic.getTypeIndex()) {
    case Statistic.INDEX_None:
        break;
    case Statistic.INDEX_Min_Max:
        plot.clearRangeMarkers();
        min0 = statistic.getMin();
        max0 = statistic.getMax();
        if (!Double.isNaN(min0)) {
            minMarker = new ValueMarker(min0);
            minMarker.setPaint(StatisticGrafic.DIAGRAM_MARKER_MIN_MAX);
            minMarker.setStroke(new BasicStroke(2.0f));
            plot.addRangeMarker(minMarker, Layer.BACKGROUND);
        }
        if (!Double.isNaN(max0)) {
            maxMarker = new ValueMarker(max0);
            maxMarker.setPaint(StatisticGrafic.DIAGRAM_MARKER_MIN_MAX);
            maxMarker.setStroke(new BasicStroke(2.0f));
            plot.addRangeMarker(maxMarker, Layer.BACKGROUND);
        }
        rangeAxisLabel = "min - max";
        break;
    case Statistic.INDEX_Mean_StdDev:
        plot.clearRangeMarkers();
        if (statistic.hasValue()) {
            min0 = statistic.getMean() - statistic.getStdDev();
            max0 = statistic.getMean() + statistic.getStdDev();
            mean = statistic.getMean();
            if (!Double.isNaN(mean)) {
                meanMarker = new ValueMarker(mean);
                meanMarker.setPaint(StatisticGrafic.DIAGRAM_MARKER_MEAN);
                meanMarker.setStroke(new BasicStroke(2.0f));
                plot.addRangeMarker(meanMarker, Layer.BACKGROUND);
            }
            if (!Double.isNaN(min0)) {
                minMarker = new ValueMarker(min0);
                minMarker.setPaint(StatisticGrafic.DIAGRAM_MARKER_STD_DEV);
                minMarker.setStroke(new BasicStroke(2.0f));
                plot.addRangeMarker(minMarker, Layer.BACKGROUND);
            }
            if (!Double.isNaN(max0)) {
                maxMarker = new ValueMarker(max0);
                maxMarker.setPaint(StatisticGrafic.DIAGRAM_MARKER_STD_DEV);
                maxMarker.setStroke(new BasicStroke(2.0f));
                plot.addRangeMarker(maxMarker, Layer.BACKGROUND);
            }
        }
        rangeAxisLabel = "\u03BC-\u03C3 - mean - \u03BC+\u03C3";
        break;
    }
    //this.buildTimeValueDiagramAxisFormat(plot, rangeAxisLabel);
}