Search in sources :

Example 1 with ChartGroup

use of net.sf.mzmine.chartbasics.chartgroups.ChartGroup in project mzmine2 by mzmine.

the class MSMSLibrarySubmissionWindow method updateAllChartSelectors.

/**
 * Create new scan selector panels
 */
public void updateAllChartSelectors() {
    group = new ChartGroup(showCrosshair, showCrosshair, true, false);
    pnCharts.removeAll();
    GridLayout layout = new GridLayout(0, 1);
    pnCharts.setLayout(layout);
    if (checkInput()) {
        Integer minSignals = paramSubmit.getParameter(LibrarySubmitParameters.minSignals).getValue();
        Double noiseLevel = paramSubmit.getParameter(LibrarySubmitParameters.noiseLevel).getValue();
        String massListName = paramSubmit.getParameter(LibrarySubmitParameters.massList).getValue();
        if (minSignals != null && noiseLevel != null && massListName != null) {
            ScanSortMode sort = (ScanSortMode) getComboSortMode().getSelectedItem();
            if (rows != null) {
                // create MS2 of all rows
                for (int i = 0; i < rows.length; i++) {
                    PeakListRow row = rows[i];
                    ScanSelectPanel pn = new ScanSelectPanel(row, sort, noiseLevel, minSignals, massListName);
                    pnScanSelect[i] = pn;
                    pn.addChartChangedListener(chart -> regroupCharts());
                    pnCharts.add(pn);
                    // add to group
                    EChartPanel c = pn.getChart();
                    if (c != null) {
                        group.add(new ChartViewWrapper(c));
                    }
                }
            } else if (scanList != null) {
                // all selectors of scanlist
                for (int i = 0; i < scanList.size(); i++) {
                    Scan[] scansEntry = scanList.get(i);
                    ScanSelectPanel pn = new ScanSelectPanel(scansEntry, sort, noiseLevel, minSignals, massListName);
                    pnScanSelect[i] = pn;
                    pn.addChartChangedListener(chart -> regroupCharts());
                    pnCharts.add(pn);
                    // add to group
                    EChartPanel c = pn.getChart();
                    if (c != null) {
                        group.add(new ChartViewWrapper(c));
                    }
                }
            }
        }
        streamSelection().forEach(pn -> {
            pn.setFragmentScan(isFragmentScan);
            // only show exclude/check button if more than 1 entry
            pn.setShowExcludeButton(pnScanSelect.length > 1);
        });
    }
    pnCharts.revalidate();
    pnCharts.repaint();
}
Also used : Color(java.awt.Color) OptionalModuleComponent(net.sf.mzmine.parameters.parametertypes.submodules.OptionalModuleComponent) Arrays(java.util.Arrays) URL(java.net.URL) ItemListener(java.awt.event.ItemListener) DataPoint(net.sf.mzmine.datamodel.DataPoint) JCheckBoxMenuItem(javax.swing.JCheckBoxMenuItem) PeakListRow(net.sf.mzmine.datamodel.PeakListRow) ChartViewWrapper(net.sf.mzmine.chartbasics.gui.wrapper.ChartViewWrapper) EChartPanel(net.sf.mzmine.chartbasics.gui.swing.EChartPanel) Map(java.util.Map) ScanSortMode(net.sf.mzmine.util.scans.sorting.ScanSortMode) LibrarySubmitTask(net.sf.mzmine.modules.peaklistmethods.io.spectraldbsubmit.LibrarySubmitTask) UserParameter(net.sf.mzmine.parameters.UserParameter) BorderLayout(java.awt.BorderLayout) JComboBox(javax.swing.JComboBox) JFrame(javax.swing.JFrame) JMenuBar(javax.swing.JMenuBar) ScrollPaneConstants(javax.swing.ScrollPaneConstants) GridBagPanel(net.sf.mzmine.util.components.GridBagPanel) SortingProperty(net.sf.mzmine.util.SortingProperty) Font(java.awt.Font) PeakListRowSorter(net.sf.mzmine.util.PeakListRowSorter) LibraryMetaDataParameters(net.sf.mzmine.modules.peaklistmethods.io.spectraldbsubmit.param.LibraryMetaDataParameters) JMenu(javax.swing.JMenu) GUIUtils(net.sf.mzmine.util.GUIUtils) GridBagConstraints(java.awt.GridBagConstraints) Logger(java.util.logging.Logger) LibrarySubmitParameters(net.sf.mzmine.modules.peaklistmethods.io.spectraldbsubmit.param.LibrarySubmitParameters) Collectors(java.util.stream.Collectors) Objects(java.util.Objects) Platform(javafx.application.Platform) Dimension(java.awt.Dimension) List(java.util.List) Stream(java.util.stream.Stream) ComboComponent(net.sf.mzmine.parameters.parametertypes.ComboComponent) EmptyBorder(javax.swing.border.EmptyBorder) AbstractMSMSIdentity(net.sf.mzmine.datamodel.identities.ms2.interf.AbstractMSMSIdentity) JPanel(javax.swing.JPanel) Scan(net.sf.mzmine.datamodel.Scan) MZmineCore(net.sf.mzmine.main.MZmineCore) Parameter(net.sf.mzmine.parameters.Parameter) ActionListener(java.awt.event.ActionListener) JSplitPane(javax.swing.JSplitPane) LibrarySubmitModule(net.sf.mzmine.modules.peaklistmethods.io.spectraldbsubmit.LibrarySubmitModule) HashMap(java.util.HashMap) LibrarySubmitIonParameters(net.sf.mzmine.modules.peaklistmethods.io.spectraldbsubmit.param.LibrarySubmitIonParameters) MessageFormat(java.text.MessageFormat) ArrayList(java.util.ArrayList) GridLayout(java.awt.GridLayout) IntegerComponent(net.sf.mzmine.parameters.parametertypes.IntegerComponent) DelayedDocumentListener(net.sf.mzmine.framework.listener.DelayedDocumentListener) JMenuItem(javax.swing.JMenuItem) JFreeChart(org.jfree.chart.JFreeChart) Hashtable(java.util.Hashtable) JComponent(javax.swing.JComponent) HelpWindow(net.sf.mzmine.desktop.impl.helpwindow.HelpWindow) MZTolerance(net.sf.mzmine.parameters.parametertypes.tolerances.MZTolerance) JButton(javax.swing.JButton) MigLayout(net.miginfocom.swing.MigLayout) ValueAxis(org.jfree.chart.axis.ValueAxis) ActionEvent(java.awt.event.ActionEvent) ChartGroup(net.sf.mzmine.chartbasics.chartgroups.ChartGroup) Consumer(java.util.function.Consumer) JScrollPane(javax.swing.JScrollPane) SortingDirection(net.sf.mzmine.util.SortingDirection) MassListComponent(net.sf.mzmine.parameters.parametertypes.MassListComponent) OptionalParameterComponent(net.sf.mzmine.parameters.parametertypes.OptionalParameterComponent) JLabel(javax.swing.JLabel) DialogLoggerUtil(net.sf.mzmine.util.DialogLoggerUtil) PseudoSpectrumDataSet(net.sf.mzmine.modules.visualization.spectra.multimsms.pseudospectra.PseudoSpectrumDataSet) DoubleComponent(net.sf.mzmine.parameters.parametertypes.DoubleComponent) GridLayout(java.awt.GridLayout) EChartPanel(net.sf.mzmine.chartbasics.gui.swing.EChartPanel) ChartViewWrapper(net.sf.mzmine.chartbasics.gui.wrapper.ChartViewWrapper) PeakListRow(net.sf.mzmine.datamodel.PeakListRow) ScanSortMode(net.sf.mzmine.util.scans.sorting.ScanSortMode) DataPoint(net.sf.mzmine.datamodel.DataPoint) ChartGroup(net.sf.mzmine.chartbasics.chartgroups.ChartGroup)

Example 2 with ChartGroup

use of net.sf.mzmine.chartbasics.chartgroups.ChartGroup in project mzmine2 by mzmine.

the class MultiMSMSWindow method updateAllCharts.

/**
 * Create new charts
 */
public void updateAllCharts() {
    msone = null;
    group = new ChartGroup(showCrosshair, showCrosshair, true, false);
    // MS1
    if (createMS1) {
        Scan scan = null;
        Feature best = null;
        for (PeakListRow r : rows) {
            Feature f = raw == null ? r.getBestPeak() : r.getPeak(raw);
            if (f != null && (best == null || f.getHeight() > best.getHeight())) {
                best = f;
            }
        }
        if (best != null) {
            scan = best.getDataFile().getScan(best.getRepresentativeScanNumber());
            EChartPanel cp = SpectrumChartFactory.createScanChartPanel(scan, showTitle, showLegend);
            if (cp != null)
                msone = new ChartViewWrapper(cp);
        }
    } else {
        // pseudo MS1 from all rows and isotope pattern
        EChartPanel cp = PseudoSpectrum.createChartPanel(rows, raw, false, "pseudo");
        if (cp != null) {
            cp.getChart().getLegend().setVisible(showLegend);
            cp.getChart().getTitle().setVisible(showTitle);
            msone = new ChartViewWrapper(cp);
        }
    }
    if (msone != null)
        group.add(msone);
    // MS2 of all rows
    for (PeakListRow row : rows) {
        EChartPanel c = SpectrumChartFactory.createMSMSChartPanel(row, raw, showTitle, showLegend, alwaysShowBest, useBestForMissingRaw);
        if (c != null) {
            group.add(new ChartViewWrapper(c));
        }
    }
    renewCharts(group);
}
Also used : EChartPanel(net.sf.mzmine.chartbasics.gui.swing.EChartPanel) ChartViewWrapper(net.sf.mzmine.chartbasics.gui.wrapper.ChartViewWrapper) PeakListRow(net.sf.mzmine.datamodel.PeakListRow) Scan(net.sf.mzmine.datamodel.Scan) Feature(net.sf.mzmine.datamodel.Feature) ChartGroup(net.sf.mzmine.chartbasics.chartgroups.ChartGroup)

Aggregations

ChartGroup (net.sf.mzmine.chartbasics.chartgroups.ChartGroup)2 EChartPanel (net.sf.mzmine.chartbasics.gui.swing.EChartPanel)2 ChartViewWrapper (net.sf.mzmine.chartbasics.gui.wrapper.ChartViewWrapper)2 PeakListRow (net.sf.mzmine.datamodel.PeakListRow)2 Scan (net.sf.mzmine.datamodel.Scan)2 BorderLayout (java.awt.BorderLayout)1 Color (java.awt.Color)1 Dimension (java.awt.Dimension)1 Font (java.awt.Font)1 GridBagConstraints (java.awt.GridBagConstraints)1 GridLayout (java.awt.GridLayout)1 ActionEvent (java.awt.event.ActionEvent)1 ActionListener (java.awt.event.ActionListener)1 ItemListener (java.awt.event.ItemListener)1 URL (java.net.URL)1 MessageFormat (java.text.MessageFormat)1 ArrayList (java.util.ArrayList)1 Arrays (java.util.Arrays)1 HashMap (java.util.HashMap)1 Hashtable (java.util.Hashtable)1