Example usage for org.jfree.data.time TimeSeries getKey

List of usage examples for org.jfree.data.time TimeSeries getKey

Introduction

In this page you can find the example usage for org.jfree.data.time TimeSeries getKey.

Prototype

public Comparable getKey() 

Source Link

Document

Returns the key for the series.

Usage

From source file:org.amanzi.awe.charts.ui.ChartsView.java

@Override
public void chartMouseClicked(final ChartMouseEvent event) {
    if (event == null) {
        return;/* w  ww  . j  av a 2  s .co m*/
    }
    Collection<String> groups = null;
    long startDate = Long.MIN_VALUE;
    long endDate = Long.MAX_VALUE;
    String cellName = StringUtils.EMPTY;

    if (event.getEntity() instanceof CategoryItemEntity) {
        CategoryItemEntity entity = (CategoryItemEntity) event.getEntity();
        IColumn period = (IColumn) entity.getColumnKey();
        ICategoryRow column = period.getItemByName((String) entity.getRowKey());

        groups = column.getGroupsNames();
        startDate = period.getStartDate();
        endDate = period.getEndDate();
        cellName = column.getName();
    } else if (event.getEntity() instanceof XYItemEntity) {
        XYItemEntity entity = (XYItemEntity) event.getEntity();
        TimeSeriesCollection dataset = (TimeSeriesCollection) entity.getDataset();
        TimeSeries ts = dataset.getSeries(entity.getSeriesIndex());
        ITimeRow row = (ITimeRow) ts.getKey();
        RegularTimePeriod period = ts.getTimePeriod(entity.getItem());

        startDate = period.getStart().getTime();
        endDate = container.getPeriod().addPeriod(startDate);
        groups = row.getGroupsForTime(startDate);
        cellName = row.getName();
    } else {
        return;
    }

    AWEEventManager.getManager().fireShowInViewEvent(model,
            new StatisticsFilter(container.getPeriod(), startDate, endDate, groups, cellName), this);
}

From source file:edu.mit.fss.examples.member.gui.CommSubsystemPanel.java

@Override
public void objectRemoved(final ObjectChangeEvent event) {
    for (ObjectChangeListener l : listenerList.getListeners(ObjectChangeListener.class)) {
        l.objectRemoved(event);//  ww  w .j  av  a2s  . c o  m
    }
    // update in event dispatch thread for thread safety
    try {
        SwingUtilities.invokeAndWait(new Runnable() {
            public void run() {
                if (connectSeriesMap.containsKey(event.getObject())) {
                    TimeSeries series = connectSeriesMap.remove(event.getObject());
                    connectDataset.removeSeries(series);
                    logger.trace("Removing series " + series.getKey() + ".");
                }
            }
        });
    } catch (InvocationTargetException | InterruptedException e) {
        logger.error(e);
    }
}

From source file:org.adempiere.webui.editor.WChartEditor.java

private void render(JFreeChart chart) {
    ChartRenderingInfo info = new ChartRenderingInfo();
    int width = 400;
    int height = chartModel.getWinHeight();
    BufferedImage bi = chart.createBufferedImage(width, height, BufferedImage.TRANSLUCENT, info);
    try {/*from w  w w  .j av a 2s  .  c  om*/
        byte[] bytes = EncoderUtil.encode(bi, ImageFormat.PNG, true);

        AImage image = new AImage("", bytes);
        Imagemap myImage = new Imagemap();

        Panel panel = getComponent();
        myImage.setContent(image);
        if (panel.getPanelchildren() != null) {
            panel.getPanelchildren().getChildren().clear();
            panel.getPanelchildren().appendChild(myImage);
        } else {
            Panelchildren pc = new Panelchildren();
            panel.appendChild(pc);
            pc.appendChild(myImage);
        }

        int count = 0;
        for (Iterator<?> it = info.getEntityCollection().getEntities().iterator(); it.hasNext();) {
            ChartEntity entity = (ChartEntity) it.next();

            String key = null;
            String seriesName = null;
            if (entity instanceof CategoryItemEntity) {
                CategoryItemEntity item = ((CategoryItemEntity) entity);
                Comparable<?> colKey = item.getColumnKey();
                Comparable<?> rowKey = item.getRowKey();
                if (colKey != null && rowKey != null) {
                    key = colKey.toString();
                    seriesName = rowKey.toString();
                }
            } else if (entity instanceof PieSectionEntity) {
                Comparable<?> sectionKey = ((PieSectionEntity) entity).getSectionKey();
                if (sectionKey != null) {
                    key = sectionKey.toString();
                }
            }
            if (entity instanceof XYItemEntity) {
                XYItemEntity item = ((XYItemEntity) entity);
                if (item.getDataset() instanceof TimeSeriesCollection) {
                    TimeSeriesCollection data = (TimeSeriesCollection) item.getDataset();
                    TimeSeries series = data.getSeries(item.getSeriesIndex());
                    TimeSeriesDataItem dataitem = series.getDataItem(item.getItem());
                    seriesName = series.getKey().toString();
                    key = dataitem.getPeriod().toString();
                }
            }

            if (key == null)
                continue;

            Area area = new Area();
            myImage.appendChild(area);
            area.setCoords(entity.getShapeCoords());
            area.setShape(entity.getShapeType());
            area.setTooltiptext(entity.getToolTipText());
            area.setId(count + "_WG__" + seriesName + "__" + key);
            count++;
        }

        myImage.addEventListener(Events.ON_CLICK, new EventListener() {
            public void onEvent(Event event) throws Exception {
                MouseEvent me = (MouseEvent) event;
                String areaId = me.getArea();
                if (areaId != null) {
                    String[] strs = areaId.split("__");
                    if (strs.length == 3) {
                        chartMouseClicked(strs[2], strs[1]);
                    }
                }
            }
        });
    } catch (Exception e) {
        log.log(Level.SEVERE, "", e);
    }

}

From source file:de.citec.csra.allocation.vis.MovingChart.java

public void updateDataPoints(String id, String label, String resource, long start, long end, State state,
        Priority prio, boolean token) {
    synchronized (this.dataset) {
        TimeSeries series = this.dataset.getSeries(id);
        if (series == null) {
            series = new TimeSeries(id);
            this.dataset.addSeries(series);
        }//from ww w . j  a  v a2 s.  com

        series.setDomainDescription(label);
        int stroke = -1;
        Color c = null;

        boolean randomcolor = false;
        if (!randomcolor) {
            switch (prio) {
            case EMERGENCY:
                c = Color.RED;
                break;
            case URGENT:
                c = Color.ORANGE;
                break;
            case HIGH:
                c = Color.YELLOW;
                break;
            case NORMAL:
                c = Color.GREEN;
                break;
            case LOW:
                c = Color.BLUE;
                break;
            case NO:
                c = Color.BLACK;
                break;
            }
        }

        switch (state) {
        case REQUESTED:
            stroke = 1;
            break;
        case SCHEDULED:
            stroke = 3;
            break;
        case ALLOCATED:
            stroke = 9;
            break;
        case RELEASED:
            stroke = 1;
            break;
        case REJECTED:
        case CANCELLED:
        case ABORTED:
            c = Color.GRAY;
            stroke = 1;
            break;
        }

        XYLineAndShapeRenderer r = (XYLineAndShapeRenderer) this.chart.getXYPlot()
                .getRendererForDataset(dataset);

        int number = -1;
        for (int i = 0; i < this.dataset.getSeries().size(); i++) {
            TimeSeries t = this.dataset.getSeries(i);
            if (t.getKey().equals(id)) {
                number = i;
            }
        }
        if (number > 0) {
            if (stroke > 0) {
                if (token) {
                    r.setSeriesStroke(number,
                            new BasicStroke(stroke, CAP_BUTT, JOIN_BEVEL, 1, new float[] { 1.5f, .5f }, .5f));
                } else {
                    r.setSeriesStroke(number, new BasicStroke(stroke, CAP_BUTT, JOIN_BEVEL, 1));
                }
            }
            if (c != null) {
                r.setSeriesPaint(number, c);
            }
        }

        long channel;
        String key = resource; //prio
        if (values.containsKey(key)) {
            channel = values.get(key);
        } else {
            channel = events++;
            values.put(key, channel);
        }

        if (!series.isEmpty()) {
            series.clear();
        }
        series.addOrUpdate(new Millisecond(new Date(start)), channel);
        series.addOrUpdate(new Millisecond(new Date(end)), channel);
    }
}

From source file:net.atomique.ksar.graph.Graph.java

public String getCsvHeader() {
    StringBuilder tmp = new StringBuilder();
    for (int i = firstDataColumn; i < HeaderStr.length; i++) {
        TimeSeries tmpseries = Stats.get(i - firstDataColumn);
        tmp.append(graphtitle).append(" ").append(tmpseries.getKey());
        tmp.append(";");
    }/*  w  w w  . j av a  2s  . c o  m*/
    return tmp.toString();
}

From source file:net.atomique.ksar.graph.Graph.java

private XYDataset create_collection(ArrayList l) {
    TimeSeriesCollection graphcollection = new TimeSeriesCollection();
    TimeSeries found;
    boolean hasdata = false;
    for (int i = 0; i < l.size(); i++) {
        found = null;//from  www. j  av  a  2 s . c  om
        for (int j = 0; j < Stats.size(); j++) {
            found = Stats.get(j);
            if (found.getKey().equals(l.get(i))) {
                break;
            } else {
                found = null;
            }
        }

        if (found != null) {
            graphcollection.addSeries(found);
            hasdata = true;
        }
    }
    if (!hasdata) {
        return null;
    }
    return graphcollection;
}

From source file:edu.dlnu.liuwenpeng.Time.TimeSeriesCollection.java

/**    
* Returns the series with the specified key, or <code>null</code> if     
* there is no such series.    // w  ww .  j a  v  a  2  s.c  o m
*     
* @param key  the series key (<code>null</code> permitted).    
*     
* @return The series with the given key.    
*/
public TimeSeries getSeries(Comparable key) {
    TimeSeries result = null;
    Iterator iterator = this.data.iterator();
    while (iterator.hasNext()) {
        TimeSeries series = (TimeSeries) iterator.next();
        Comparable k = series.getKey();
        if (k != null && k.equals(key)) {
            result = series;
        }
    }
    return result;
}

From source file:org.jfree.data.time.TimeSeriesCollection.java

/**
 * Returns the index of the series with the specified key, or -1 if no
 * series has that key./*  w  ww  .j  ava2  s  . c  o m*/
 * 
 * @param key  the key (<code>null</code> not permitted).
 * 
 * @return The index.
 * 
 * @since 1.0.17
 */
public int getSeriesIndex(Comparable key) {
    ParamChecks.nullNotPermitted(key, "key");
    int seriesCount = getSeriesCount();
    for (int i = 0; i < seriesCount; i++) {
        TimeSeries series = (TimeSeries) this.data.get(i);
        if (key.equals(series.getKey())) {
            return i;
        }
    }
    return -1;
}

From source file:org.yccheok.jstock.gui.charting.ChartLayerUI.java

private String getLegendName(int plotIndex, int seriesIndex) {
    final TimeSeries timeSeries = this.getTimeSeries(plotIndex, seriesIndex);
    if (timeSeries == null) {
        return null;
    }//from w w  w . j a v a2 s  .  co  m
    return (String) timeSeries.getKey();
}

From source file:org.jfree.data.time.TimeSeriesTest.java

@Test
public void testSetKey() {
    TimeSeries s1 = new TimeSeries("S");
    s1.setKey("S1");
    assertEquals("S1", s1.getKey());

    TimeSeriesCollection c = new TimeSeriesCollection();
    c.addSeries(s1);//w w  w  . java 2 s. c o m
    TimeSeries s2 = new TimeSeries("S2");
    c.addSeries(s2);

    // now we should be allowed to change s1's key to anything but "S2"
    s1.setKey("OK");
    assertEquals("OK", s1.getKey());

    try {
        s1.setKey("S2");
        fail("Expect an exception here.");
    } catch (IllegalArgumentException e) {
        // OK
    }

    // after s1 is removed from the collection, we should be able to set
    // the key to anything we want...
    c.removeSeries(s1);
    s1.setKey("S2");

    // check that removing by index also works
    s1.setKey("S1");
    c.addSeries(s1);
    c.removeSeries(1);
    s1.setKey("S2");
}