List of usage examples for org.jfree.data.general DatasetUtilities findMaximumRangeValue
public static Number findMaximumRangeValue(XYDataset dataset)
From source file:Similaridade.GraficosSimilaridade.java
public static JFreeChart criaGrafico2LinhasComDeslocada(CapturaAtual onda1, CapturaAtual onda2, int deslocamento, double correlacao, Paint cor1, Paint cor2) { String eixoy = new String("Current "); // verifica se fase ou fuga if (onda1.getCodEvento().getCodEvento() == 1) { // evento 1 de fuga eixoy = eixoy.concat("(mA)"); } else {/*from w ww.j a v a2s . c om*/ eixoy = eixoy.concat("(A)"); } XYDataset dataset = newDataset2OndasComDeslocada(onda1, onda2, deslocamento, correlacao); // create the chart... final JFreeChart chart = ChartFactory.createXYLineChart(null, // chart title "Time (ms)", // x axis label eixoy, // y axis label dataset, // data PlotOrientation.VERTICAL, true, // include legend false, // tooltips false // urls ); chart.setBackgroundPaint(Color.white); // get a reference to the plot for further customisation... final XYPlot plot = chart.getXYPlot(); // Definindo valores no eixo y double min = (double) DatasetUtilities.findMinimumRangeValue(dataset); double max = (double) DatasetUtilities.findMaximumRangeValue(dataset); plot.getRangeAxis().setRange(min - min * 0.005, //min max + min * 0.005); plot.setBackgroundPaint(Color.WHITE); plot.setDomainGridlinePaint(Color.LIGHT_GRAY); plot.setRangeGridlinePaint(Color.LIGHT_GRAY); final XYLineAndShapeRenderer renderer = new XYLineAndShapeRenderer(); renderer.setBaseStroke(new BasicStroke(1.0f)); for (int i = 0; i < dataset.getSeriesCount(); i++) { renderer.setSeriesLinesVisible(i, true); renderer.setSeriesShapesVisible(i, false); } // Ajustar para todas as cores padro, pelo menos 10 renderer.setSeriesPaint(0, cor1); renderer.setSeriesPaint(1, cor2); /* Cdigo para ter linhas tracejadas renderer.setSeriesStroke(1, new BasicStroke(1.0f, BasicStroke.CAP_ROUND, BasicStroke.CAP_ROUND, 20.0f, new float[] {5.0f}, 0.0f) ); renderer.setDrawSeriesLineAsPath(true); /* Final do Codigo para tracejadas */ plot.setRenderer(renderer); return chart; }
From source file:net.sf.mzmine.modules.visualization.ida.IDAPlot.java
@Override public void mouseClicked(final MouseEvent event) { // Let the parent handle the event (selection etc.) super.mouseClicked(event); if (event.getX() < 70) { // User clicked on Y-axis if (event.getClickCount() == 2) { // Reset zoom on Y-axis XYDataset data = ((XYPlot) getChart().getPlot()).getDataset(); Number maximum = DatasetUtilities.findMaximumRangeValue(data); getXYPlot().getRangeAxis().setRange(0, 1.05 * maximum.floatValue()); } else if (event.getClickCount() == 1) { // Auto range on Y-axis getXYPlot().getRangeAxis().setAutoTickUnitSelection(true); getXYPlot().getRangeAxis().setAutoRange(true); }/*from www . ja v a 2s . c om*/ } else if (event.getY() > this.getChartRenderingInfo().getPlotInfo().getPlotArea().getMaxY() - 41 && event.getClickCount() == 2) { // Reset zoom on X-axis getXYPlot().getDomainAxis().setAutoTickUnitSelection(true); restoreAutoDomainBounds(); } else if (event.getClickCount() == 2) { visualizer.actionPerformed( new ActionEvent(event.getSource(), ActionEvent.ACTION_PERFORMED, "SHOW_SPECTRUM")); } }
From source file:net.nikr.eve.jeveasset.gui.tabs.tracker.TrackerTab.java
private void updateShown() { //Remove All//from w w w. ja v a 2s. c o m while (dataset.getSeriesCount() != 0) { dataset.removeSeries(0); } render.clear(); if (jTotal.isSelected()) { //Update total TimePeriodValues total = new TimePeriodValues(TabsTracker.get().total()); for (Map.Entry<SimpleTimePeriod, Value> entry : cache.entrySet()) { double t = 0; if (jWalletBalance.isSelected() && walletBalance != null) { t += entry.getValue().getBalanceTotal(); } if (jAssets.isSelected() && assets != null) { t += entry.getValue().getAssetsTotal(); } if (jSellOrders.isSelected() && sellOrders != null) { t += entry.getValue().getSellOrders(); } if (jEscrows.isSelected() && escrows != null) { t += entry.getValue().getEscrows(); } //Escrows To Cover is not money you own, It's technically money you owe //Therefor it's not included in the total //See: https://forums.eveonline.com/default.aspx?g=posts&m=6607898#post6607898 //if (jEscrowsToCover.isSelected() && escrowsToCover != null) { // t += entry.getValue().getEscrowsToCover(); //} if (jManufacturing.isSelected() && manufacturing != null) { t += entry.getValue().getManufacturing(); } if (jContractCollateral.isSelected() && contractCollateral != null) { t += entry.getValue().getContractCollateral(); } if (jContractValue.isSelected() && contractValue != null) { t += entry.getValue().getContractValue(); } total.add(entry.getKey(), t); } dataset.addSeries(total); Integer minColumn = null; if (jWalletBalance.isSelected() && walletColumn != null) { minColumn = walletColumn; } if (jAssets.isSelected() && assetColumn != null) { if (minColumn != null) { minColumn = Math.min(minColumn, assetColumn); } else { minColumn = assetColumn; } } render.add(dataset.getSeriesCount() - 1, minColumn); updateRender(dataset.getSeriesCount() - 1, Color.RED.darker()); } if (jWalletBalance.isSelected() && walletBalance != null) { dataset.addSeries(walletBalance); render.add(dataset.getSeriesCount() - 1, walletColumn); updateRender(dataset.getSeriesCount() - 1, Color.BLUE.darker()); } if (jAssets.isSelected() && assets != null) { dataset.addSeries(assets); render.add(dataset.getSeriesCount() - 1, assetColumn); updateRender(dataset.getSeriesCount() - 1, Color.GREEN.darker().darker()); } if (jSellOrders.isSelected() && sellOrders != null) { dataset.addSeries(sellOrders); updateRender(dataset.getSeriesCount() - 1, Color.CYAN.darker()); } if (jEscrows.isSelected() && escrows != null) { dataset.addSeries(escrows); updateRender(dataset.getSeriesCount() - 1, Color.BLACK); } if (jEscrowsToCover.isSelected() && escrowsToCover != null) { dataset.addSeries(escrowsToCover); updateRender(dataset.getSeriesCount() - 1, Color.GRAY); } if (jManufacturing.isSelected() && manufacturing != null) { dataset.addSeries(manufacturing); updateRender(dataset.getSeriesCount() - 1, Color.MAGENTA); } if (jContractCollateral.isSelected() && contractCollateral != null) { dataset.addSeries(contractCollateral); updateRender(dataset.getSeriesCount() - 1, Color.PINK); } if (jContractValue.isSelected() && contractValue != null) { dataset.addSeries(contractValue); updateRender(dataset.getSeriesCount() - 1, Color.ORANGE); } //Add empty dataset if (dataset.getSeriesCount() == 0) { TimePeriodValues timePeriodValues = new TimePeriodValues(TabsTracker.get().empty()); dataset.addSeries(timePeriodValues); updateRender(dataset.getSeriesCount() - 1, Color.BLACK); } jNextChart.getXYPlot().getRangeAxis().setAutoRange(true); jNextChart.getXYPlot().getDomainAxis().setAutoRange(true); Number maxNumber = DatasetUtilities.findMaximumRangeValue(dataset); NumberAxis rangeAxis = (NumberAxis) jNextChart.getXYPlot().getRangeAxis(); rangeAxis.setNumberFormatOverride(Formater.LONG_FORMAT); //Default if (maxNumber != null && (maxNumber instanceof Double)) { double max = (Double) maxNumber; if (max > 1000000000000.0) { //Higher than 1 Trillion rangeAxis.setNumberFormatOverride(Formater.TRILLIONS_FORMAT); } else if (max > 1000000000.0) { //Higher than 1 Billion rangeAxis.setNumberFormatOverride(Formater.BILLIONS_FORMAT); } else if (max > 1000000.0) { //Higher than 1 Million rangeAxis.setNumberFormatOverride(Formater.MILLIONS_FORMAT); } } }