Giter VIP home page Giter VIP logo

urmi-21 / metaomgraph Goto Github PK

View Code? Open in Web Editor NEW
32.0 3.0 14.0 179.68 MB

MetaOmGraph: a workbench for interactive exploratory data analysis of large expression datasets

Home Page: http://metnetweb.gdcb.iastate.edu/MetNet_MetaOmGraph.htm

License: MIT License

Java 89.18% Makefile 10.78% R 0.05%
rna-seq big-data-visualization exploratory-data-analysis transcriptomics cancer-data bioinformatics mog

metaomgraph's Introduction

Maven CI download datasets GitHub All Releases publication Join the chat at https://gitter.im/MetaOmGraph/community

MetaOmGraph

MetaOmGraph (MOG) is a Java software to interactively explore and visualize large datasets. MOG overcomes the challenges posed by big size and complexity of big datasets by efficient handling of data files by using a combination of data indexing and buffering schemes. By incorporating metadata, MOG adds another dimension to the analyses and provides flexibility in data exploration. MOG allows users to explore their own data on their local machines. The user can save the progress at any stage of analysis to a MOG project file. Saved MOG projects can be shared, reused, and included in publications. MOG is user-centered software, designed for all types of data, but specialized for expression data. It combines the ability to analyze very large data sets in real time with metadata analysis, statistical analysis, list-making, and graphing capabilities.

alt text

Citation

Urminder Singh, Manhoi Hur, Karin Dorman, Eve Syrkin Wurtele, MetaOmGraph: a workbench for interactive exploratory data analysis of large expression datasets, Nucleic Acids Research.

Examples

Line Chart

alt text

Box Plot

alt text

Scatter Plot

alt text

Volcano Plot

alt text

Histogram

alt text

Filtering Samples

alt text

Getting Started

Download executable from: http://metnetweb.gdcb.iastate.edu/MetNet_MetaOmGraph.htm

User guide is available at: https://github.com/urmi-21/MetaOmGraph/blob/master/manual/MOG_User_Guide.pdf

Prerequisites

  • Java Runtime Environment 8 (or higher)
  • R 3.4 (or higher) [optional]

Installing

MOG is freely available to download from http://metnetweb.gdcb.iastate.edu/MetNet_MetaOmGraph.htm. Click the download button, and then download the .zip file. Unzip the downloaded file to get a .jar file, this is the MOG program.

DOUBLE CLICK on the .jar file icon to start MOG.

Contributing

Please see CONTRIBUTING.md

Contributors

Current developers

  • Urminder Singh
  • Sumanth Kaliki
  • Kumara Sri Harsha

Initial developers

  • Manhoi Hur
  • Nick Ransom

Getting Help

If you encounter an error/bug, please report a minimal reproducible example on github. For questions and other discussion, please get in touch with the developers via github or email.

License

This project is licensed under the MIT License - see the LICENSE file for details

Some Java libraries MOG uses

References

If you use MetaOmGraph in your research, please cite the paper Urminder Singh, Manhoi Hur, Karin Dorman, Eve Syrkin Wurtele, MetaOmGraph: a workbench for interactive exploratory data analysis of large expression datasets, Nucleic Acids Research.

If you use Mutual Information module in MetaOmGraph, please also cite Daub et al. Estimating mutual information using B-spline functions--an improved similarity measure for analysing gene expression data

metaomgraph's People

Contributors

dependabot[bot] avatar gitter-badger avatar sumanthkaliki-formlabs avatar sumanthreddy542 avatar urmi-21 avatar vksriharsha avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

metaomgraph's Issues

Improve MOG tooltips

Is your feature request related to a problem? Please describe.
Many buttons and fields lack tooltip.

Describe the solution you'd like
Add tooltips to MOG interface objects.

MetaOmBot: Bug report from user

MetaOmGraph Error:
Email:
Comments:
I tried to open a previous session. the default is logging set to permanently off. yet I seem to have choices of previous sessions.
MOG version: v. 1.8.1
MOG date: February 20, 2020
OS: Mac OS X
Error log:

java.lang.NullPointerException
edu.iastate.metnet.metaomgraph.playback.PlaybackAction.playActions(PlaybackAction.java:58)
edu.iastate.metnet.metaomgraph.ui.ReproducibilityDashboardPanel$7.actionPerformed(ReproducibilityDashboardPanel.java:425)
javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
java.awt.Component.processMouseEvent(Component.java:6539)
javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
java.awt.Component.processEvent(Component.java:6304)
java.awt.Container.processEvent(Container.java:2239)
java.awt.Component.dispatchEventImpl(Component.java:4889)
java.awt.Container.dispatchEventImpl(Container.java:2297)
java.awt.Component.dispatchEvent(Component.java:4711)
java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535)
java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
java.awt.Container.dispatchEventImpl(Container.java:2283)
java.awt.Window.dispatchEventImpl(Window.java:2746)
java.awt.Component.dispatchEvent(Component.java:4711)
java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
java.awt.EventQueue.access$500(EventQueue.java:97)
java.awt.EventQueue$3.run(EventQueue.java:709)
java.awt.EventQueue$3.run(EventQueue.java:703)
java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
java.awt.EventQueue$4.run(EventQueue.java:733)
java.awt.EventQueue$4.run(EventQueue.java:731)
java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

Improve interface to save plots; show file-type options

MOG can export charts as .png and .svg graphics. Write now interface relies on the user's provided file-type extension to choose the file-type. The interface should display the options to the user to choose the file type e.g. .png, .svg, .jpg.

MetaOmBot: Bug report from user

MetaOmGraph Error:
Email:
Comments:
color chooser bug
MOG version: v. 1.8.1
MOG date: February 20, 2020
OS: Windows 10
Error log:

java.lang.ClassCastException: edu.iastate.metnet.metaomgraph.ui.ColorChooseButton$1 cannot be cast to javax.swing.AbstractButton
javax.swing.plaf.basic.BasicButtonListener.stateChanged(BasicButtonListener.java:158)
edu.iastate.metnet.metaomgraph.ui.ColorChooseButton$1.actionPerformed(ColorChooseButton.java:46)
javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
java.awt.Component.processMouseEvent(Component.java:6539)
javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
java.awt.Component.processEvent(Component.java:6304)
java.awt.Container.processEvent(Container.java:2239)
java.awt.Component.dispatchEventImpl(Component.java:4889)
java.awt.Container.dispatchEventImpl(Container.java:2297)
java.awt.Component.dispatchEvent(Component.java:4711)
java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535)
java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
java.awt.Container.dispatchEventImpl(Container.java:2283)
java.awt.Window.dispatchEventImpl(Window.java:2746)
java.awt.Component.dispatchEvent(Component.java:4711)
java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
java.awt.EventQueue.access$500(EventQueue.java:97)
java.awt.EventQueue$3.run(EventQueue.java:709)
java.awt.EventQueue$3.run(EventQueue.java:703)
java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
java.awt.EventQueue$4.run(EventQueue.java:733)
java.awt.EventQueue$4.run(EventQueue.java:731)
java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

MOG will not export more than 250 columns to xls.

MOG will not export more than 250 columns to xls from the import to xls box on the line chart
Screen Shot 2020-06-22 at 10 47 21 PM
Screen Shot 2020-06-22 at 10 47 02 PM
Screen Shot 2020-06-22 at 10 46 51 PM

. (250 used to be the column limit for xls >10 years ago when this was implemented, but it is far greater now.)

shared project

When a project is shared, it does not open automatically. rather, as a user, I am asked to find the correct data and metadata txt files. When this happens, correct files are greyed out.
correct files are greyed out Screen Shot 2020-06-27 at 2 03 25 PM
If I select "see all files", then then can see and chose correct data and metadata files, and make the project. But a first time user would not know that.
can see correct files Screen Shot 2020-06-27 at 2 03 33 PM

MetaOmBot: Bug report from user

MetaOmGraph Error:
Email:
Comments:
MOG version: v. 1.8.1
MOG date: February 20, 2020
OS: Windows 10
Error log:

java.lang.NullPointerException
edu.iastate.metnet.metaomgraph.ui.MetadataTableDisplayPanel.updateTable(MetadataTableDisplayPanel.java:1595)
edu.iastate.metnet.metaomgraph.ui.MetaOmTablePanel.addExtInfoTab(MetaOmTablePanel.java:2329)
edu.iastate.metnet.metaomgraph.ui.MetaOmTablePanel.<init>(MetaOmTablePanel.java:676)
edu.iastate.metnet.metaomgraph.MetaOmGraph.projectOpened(MetaOmGraph.java:1867)
edu.iastate.metnet.metaomgraph.MetaOmGraph.access$2(MetaOmGraph.java:1856)
edu.iastate.metnet.metaomgraph.MetaOmGraph$OpenProjectWorker.finished(MetaOmGraph.java:2339)
edu.iastate.metnet.metaomgraph.AnimatedSwingWorker$1.run(AnimatedSwingWorker.java:93)
java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
java.base/java.security.AccessController.doPrivileged(AccessController.java:389)
java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740)
java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:117)
java.desktop/java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:190)
java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
java.base/java.security.AccessController.doPrivileged(AccessController.java:389)
java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740)
java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

Error shown after Sample metadata table is filtered/updated

Occasionally this error message is shown after the sample metadata table is updated. It is harmless, after closing error dialog things seem normal.

Describe the dataset used
The human dataset from here: http://metnetweb.gdcb.iastate.edu/MetNet_MetaOmGraph.htm

To Reproduce
Steps to reproduce the behavior:

  1. Go to sample metadata table
  2. Click on Edit->Filter rows
  3. Perform query
  4. See error

Expected behavior
After the search, the metadata table should be updated and display the retained rows.

Desktop (please complete the following information):

  • OS: Windows10
  • Java version: 1.8
  • Total available memory: 8GB
  • CPU and number of cores: Intel i5/4 cores

MOG Error Report

java.lang.ArrayIndexOutOfBoundsException: 4 >= 4 java.base/java.util.Vector.elementAt(Vector.java:463) java.desktop/javax.swing.table.DefaultTableColumnModel.getColumn(DefaultTableColumnModel.java:295) java.desktop/javax.swing.plaf.basic.BasicTableHeaderUI.paint(BasicTableHeaderUI.java:671) java.desktop/javax.swing.plaf.ComponentUI.update(ComponentUI.java:161) java.desktop/javax.swing.JComponent.paintComponent(JComponent.java:797) java.desktop/javax.swing.JComponent.paint(JComponent.java:1074) java.desktop/javax.swing.JComponent.paintToOffscreen(JComponent.java:5255) java.desktop/javax.swing.RepaintManager$PaintManager.paintDoubleBufferedImpl(RepaintManager.java:1643) java.desktop/javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1618) java.desktop/javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1556) java.desktop/javax.swing.RepaintManager.paint(RepaintManager.java:1323) java.desktop/javax.swing.JComponent._paintImmediately(JComponent.java:5203) java.desktop/javax.swing.JComponent.paintImmediately(JComponent.java:5013) java.desktop/javax.swing.RepaintManager$4.run(RepaintManager.java:865) java.desktop/javax.swing.RepaintManager$4.run(RepaintManager.java:848) java.base/java.security.AccessController.doPrivileged(AccessController.java:391) java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) java.desktop/javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:848) java.desktop/javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:823) java.desktop/javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:772) java.desktop/javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1884) java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313) java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770) java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721) java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715) java.base/java.security.AccessController.doPrivileged(AccessController.java:391) java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740) java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:117) java.desktop/java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:190) java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:235) java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:233) java.base/java.security.AccessController.doPrivileged(AccessController.java:312) java.desktop/java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:233) java.desktop/java.awt.Dialog.show(Dialog.java:1070) java.desktop/java.awt.Component.show(Component.java:1716) java.desktop/java.awt.Component.setVisible(Component.java:1663) java.desktop/java.awt.Window.setVisible(Window.java:1021) java.desktop/java.awt.Dialog.setVisible(Dialog.java:1005) edu.iastate.metnet.metaomgraph.AnimatedSwingWorker.start(AnimatedSwingWorker.java:166) edu.iastate.metnet.metaomgraph.ui.MetadataTableDisplayPanel.updateTable(MetadataTableDisplayPanel.java:1203) edu.iastate.metnet.metaomgraph.ui.MetadataTableDisplayPanel.updateTable(MetadataTableDisplayPanel.java:1126) edu.iastate.metnet.metaomgraph.ui.MetaOmTablePanel.updateMetadataTable(MetaOmTablePanel.java:3781) edu.iastate.metnet.metaomgraph.ui.MetadataTreeDisplayPanel.updateTree(MetadataTreeDisplayPanel.java:666) edu.iastate.metnet.metaomgraph.ui.MetaOmTablePanel.updateMetadataTree(MetaOmTablePanel.java:3788) edu.iastate.metnet.metaomgraph.ui.MetadataFilter$2.actionPerformed(MetadataFilter.java:170) java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1967) java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2308) java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:405) java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262) java.desktop/javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:279) java.desktop/java.awt.Component.processMouseEvent(Component.java:6636) java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3342) java.desktop/java.awt.Component.processEvent(Component.java:6401) java.desktop/java.awt.Container.processEvent(Container.java:2263) java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5012) java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321) java.desktop/java.awt.Component.dispatchEvent(Component.java:4844) java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4918) java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4547) java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4488) java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2307) java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2762) java.desktop/java.awt.Component.dispatchEvent(Component.java:4844) java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772) java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721) java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715) java.base/java.security.AccessController.doPrivileged(AccessController.java:391) java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95) java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745) java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743) java.base/java.security.AccessController.doPrivileged(AccessController.java:391) java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85) java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742) java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

MetaOmBot: Bug report from user

MetaOmGraph Error:
Email:
Comments:
MOG version: v. 1.8.1
MOG date: February 20, 2020
OS: Mac OS X
Error log:

java.lang.ClassCastException: java.lang.String cannot be cast to edu.iastate.metnet.metaomgraph.playback.LoggingTreeNode
edu.iastate.metnet.metaomgraph.playback.PlaybackAction.playActions(PlaybackAction.java:61)
edu.iastate.metnet.metaomgraph.ui.ReproducibilityDashboardPanel$7.actionPerformed(ReproducibilityDashboardPanel.java:425)
javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
java.awt.Component.processMouseEvent(Component.java:6539)
javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
java.awt.Component.processEvent(Component.java:6304)
java.awt.Container.processEvent(Container.java:2239)
java.awt.Component.dispatchEventImpl(Component.java:4889)
java.awt.Container.dispatchEventImpl(Container.java:2297)
java.awt.Component.dispatchEvent(Component.java:4711)
java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535)
java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
java.awt.Container.dispatchEventImpl(Container.java:2283)
java.awt.Window.dispatchEventImpl(Window.java:2746)
java.awt.Component.dispatchEvent(Component.java:4711)
java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
java.awt.EventQueue.access$500(EventQueue.java:97)
java.awt.EventQueue$3.run(EventQueue.java:709)
java.awt.EventQueue$3.run(EventQueue.java:703)
java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
java.awt.EventQueue$4.run(EventQueue.java:733)
java.awt.EventQueue$4.run(EventQueue.java:731)
java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

MetaOmBot: Bug report from user

MetaOmGraph Error:
Email: urmi-21
Comments:
Cosine similarity histogram from matrix table
MOG version: v. 1.8.1
MOG date: February 20, 2020
OS: Windows 10
Error log:

java.lang.IllegalArgumentException: Identifier not found
javax.swing.table.DefaultTableColumnModel.getColumnIndex(DefaultTableColumnModel.java:282)
javax.swing.JTable.getColumn(JTable.java:2564)
edu.iastate.metnet.metaomgraph.ui.SimilarityDisplayFrame$5.actionPerformed(SimilarityDisplayFrame.java:132)
javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
javax.swing.AbstractButton.doClick(AbstractButton.java:376)
javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:842)
javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:886)
java.awt.Component.processMouseEvent(Component.java:6539)
javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
java.awt.Component.processEvent(Component.java:6304)
java.awt.Container.processEvent(Container.java:2239)
java.awt.Component.dispatchEventImpl(Component.java:4889)
java.awt.Container.dispatchEventImpl(Container.java:2297)
java.awt.Component.dispatchEvent(Component.java:4711)
java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535)
java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
java.awt.Container.dispatchEventImpl(Container.java:2283)
java.awt.Window.dispatchEventImpl(Window.java:2746)
java.awt.Component.dispatchEvent(Component.java:4711)
java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
java.awt.EventQueue.access$500(EventQueue.java:97)
java.awt.EventQueue$3.run(EventQueue.java:709)
java.awt.EventQueue$3.run(EventQueue.java:703)
java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
java.awt.EventQueue$4.run(EventQueue.java:733)
java.awt.EventQueue$4.run(EventQueue.java:731)
java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

MetaOmBot: Bug report from user

MetaOmGraph Error:
Email:
Comments: I chnaged themes a couple times, then changed color properties, then reverted to blue color theme. then I clicked "color" tab at bottom left. this is result
MOG version: v. 1.8.1
MOG date: February 20, 2020
OS: Mac OS X
Error log:

java.lang.NullPointerException
edu.iastate.metnet.metaomgraph.ui.TaskbarPanel$1.actionPerformed(TaskbarPanel.java:211)
javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
javax.swing.AbstractButton.doClick(AbstractButton.java:376)
javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:842)
com.apple.laf.AquaMenuItemUI.doClick(AquaMenuItemUI.java:157)
javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:886)
java.awt.Component.processMouseEvent(Component.java:6539)
javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
java.awt.Component.processEvent(Component.java:6304)
java.awt.Container.processEvent(Container.java:2239)
java.awt.Component.dispatchEventImpl(Component.java:4889)
java.awt.Container.dispatchEventImpl(Container.java:2297)
java.awt.Component.dispatchEvent(Component.java:4711)
java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535)
java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
java.awt.Container.dispatchEventImpl(Container.java:2283)
java.awt.Window.dispatchEventImpl(Window.java:2746)
java.awt.Component.dispatchEvent(Component.java:4711)
java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
java.awt.EventQueue.access$500(EventQueue.java:97)
java.awt.EventQueue$3.run(EventQueue.java:709)
java.awt.EventQueue$3.run(EventQueue.java:703)
java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
java.awt.EventQueue$4.run(EventQueue.java:733)
java.awt.EventQueue$4.run(EventQueue.java:731)
java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

Add density histogram

Is your feature request related to a problem? Please describe.
Currently, the histogram plot shows the frequency of data. There should be an option to create normalized by sum histogram that would correspond to density.

Describe the solution you'd like
Add an option to the histogram plot to normalize histogram by total count.

quitting MOG

Every place that says "Quit MOG" should actually function.

MetaOmBot: Bug report from user

MetaOmGraph Error:
Email:
Comments:
MOG version: v. 1.8.1
MOG date: February 20, 2020
OS: Mac OS X
Error log:

java.lang.NullPointerException: No last correlation to save
edu.iastate.metnet.metaomgraph.ui.MetaOmTablePanel.keepLastCorrelation(MetaOmTablePanel.java:5331)
edu.iastate.metnet.metaomgraph.ui.MetaOmTablePanel.actionPerformed(MetaOmTablePanel.java:4263)
javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
javax.swing.AbstractButton.doClick(AbstractButton.java:376)
javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:842)
javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:886)
java.awt.Component.processMouseEvent(Component.java:6539)
javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
java.awt.Component.processEvent(Component.java:6304)
java.awt.Container.processEvent(Container.java:2239)
java.awt.Component.dispatchEventImpl(Component.java:4889)
java.awt.Container.dispatchEventImpl(Container.java:2297)
java.awt.Component.dispatchEvent(Component.java:4711)
java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535)
java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
java.awt.Container.dispatchEventImpl(Container.java:2283)
java.awt.Window.dispatchEventImpl(Window.java:2746)
java.awt.Component.dispatchEvent(Component.java:4711)
java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
java.awt.EventQueue.access$500(EventQueue.java:97)
java.awt.EventQueue$3.run(EventQueue.java:709)
java.awt.EventQueue$3.run(EventQueue.java:703)
java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
java.awt.EventQueue$4.run(EventQueue.java:733)
java.awt.EventQueue$4.run(EventQueue.java:731)
java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

Enable hypothesis testing in boxplot charts

When two or more features are plotted as boxplot, perform hypothesis test on the distribution and display the results in the box plot. User can choose U test or t test. For more than two categories perform anova.

MetaOmBot: Bug report from user

MetaOmGraph Error:
Email:
Comments:
for testing
MOG version: v. 1.8.1
MOG date: February 20, 2020
OS: Windows 10
Error log:

java.lang.NullPointerException
edu.iastate.metnet.metaomgraph.ui.MetadataTableDisplayPanel.updateTable(MetadataTableDisplayPanel.java:1595)
edu.iastate.metnet.metaomgraph.ui.MetaOmTablePanel.addExtInfoTab(MetaOmTablePanel.java:2329)
edu.iastate.metnet.metaomgraph.ui.MetaOmTablePanel.<init>(MetaOmTablePanel.java:676)
edu.iastate.metnet.metaomgraph.MetaOmGraph.projectOpened(MetaOmGraph.java:1867)
edu.iastate.metnet.metaomgraph.MetaOmGraph.access$2(MetaOmGraph.java:1856)
edu.iastate.metnet.metaomgraph.MetaOmGraph$OpenProjectWorker.finished(MetaOmGraph.java:2339)
edu.iastate.metnet.metaomgraph.AnimatedSwingWorker$1.run(AnimatedSwingWorker.java:93)
java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
java.base/java.security.AccessController.doPrivileged(AccessController.java:389)
java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740)
java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:117)
java.desktop/java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:190)
java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
java.base/java.security.AccessController.doPrivileged(AccessController.java:389)
java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740)
java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

MetaOmBot: Bug report from user

MetaOmGraph Error:
Email:
Comments:
MOG version: v. 1.8.1
MOG date: February 20, 2020
OS: Mac OS X
Error log:

java.lang.NullPointerException
edu.iastate.metnet.metaomgraph.MetaOmProject.getAllDefaultRowNames(MetaOmProject.java:2409)
edu.iastate.metnet.metaomgraph.MetaOmProject.getRowIndexbyName(MetaOmProject.java:2347)
edu.iastate.metnet.metaomgraph.ui.StripedTable.getToolTipText(StripedTable.java:75)
javax.swing.ToolTipManager$insideTimerAction.actionPerformed(ToolTipManager.java:675)
javax.swing.Timer.fireActionPerformed(Timer.java:313)
javax.swing.Timer$DoPostEvent.run(Timer.java:245)
java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
java.awt.EventQueue.access$500(EventQueue.java:97)
java.awt.EventQueue$3.run(EventQueue.java:709)
java.awt.EventQueue$3.run(EventQueue.java:703)
java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

Implement import metadata window as an internal frame

Is your feature request related to a problem? Please describe.
Importing metadata into a project opens a new window outside of MOG. It would be better if it opes a new internal frame.
This also goes for editing samples window from Edit-->Manage samples.

Describe the solution you'd like
Reimplement import metadata window to be an internal frame.

Add sorting options for box plot

Is your feature request related to a problem? Please describe.
Add sorting options to box plot. E.g. sort by median value, sort by groups, etc.

Describe the solution you'd like
Implement an interface to allow the sorting of boxplots. Currently, a triple-click allows reordering the box plot but an automated sorting method is needed.

MetaOmBot: Bug report from user

MetaOmGraph Error:
Email:
Comments:
MOG version: v. 1.8.1
MOG date: February 20, 2020
OS: Windows 10
Error log:

java.lang.NullPointerException
edu.iastate.metnet.metaomgraph.ui.MetadataTableDisplayPanel.updateTable(MetadataTableDisplayPanel.java:1595)
edu.iastate.metnet.metaomgraph.ui.MetaOmTablePanel.addExtInfoTab(MetaOmTablePanel.java:2329)
edu.iastate.metnet.metaomgraph.ui.MetaOmTablePanel.<init>(MetaOmTablePanel.java:676)
edu.iastate.metnet.metaomgraph.MetaOmGraph.projectOpened(MetaOmGraph.java:1867)
edu.iastate.metnet.metaomgraph.MetaOmGraph.access$2(MetaOmGraph.java:1856)
edu.iastate.metnet.metaomgraph.MetaOmGraph$OpenProjectWorker.finished(MetaOmGraph.java:2339)
edu.iastate.metnet.metaomgraph.AnimatedSwingWorker$1.run(AnimatedSwingWorker.java:93)
java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
java.base/java.security.AccessController.doPrivileged(AccessController.java:389)
java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740)
java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:117)
java.desktop/java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:190)
java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
java.base/java.security.AccessController.doPrivileged(AccessController.java:389)
java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740)
java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

MetaOmBot: Bug report from user

MetaOmGraph Error:
Email:
Comments:
MOG version: v. 1.8.1
MOG date: February 20, 2020
OS: Mac OS X
Error log:

java.lang.NullPointerException
edu.iastate.metnet.metaomgraph.MetaOmProject.getAllDefaultRowNames(MetaOmProject.java:2409)
edu.iastate.metnet.metaomgraph.MetaOmProject.getRowIndexbyName(MetaOmProject.java:2347)
edu.iastate.metnet.metaomgraph.ui.StripedTable.getToolTipText(StripedTable.java:75)
javax.swing.ToolTipManager$insideTimerAction.actionPerformed(ToolTipManager.java:675)
javax.swing.Timer.fireActionPerformed(Timer.java:313)
javax.swing.Timer$DoPostEvent.run(Timer.java:245)
java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
java.awt.EventQueue.access$500(EventQueue.java:97)
java.awt.EventQueue$3.run(EventQueue.java:709)
java.awt.EventQueue$3.run(EventQueue.java:703)
java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

Subsets/lists for samples

MOG can search and subset the samples but there should be a way to store the subset lists and switch to the selected subset with just a click, just like feature lists.

Crash reported from user

MetaOmGraph Error:
Email: [email protected]
Comments:
This is a test exception generated by MOG
MOG version: v. 1.8.1
MOG date: February 20, 2020
OS: Windows 10
Error log:

java.lang.ArithmeticException: / by zero
edu.iastate.metnet.metaomgraph.ui.MetaOmTablePanel.makeBoxPlot(MetaOmTablePanel.java:1429)
edu.iastate.metnet.metaomgraph.ui.MetaOmTablePanel.actionPerformed(MetaOmTablePanel.java:2572)
javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
javax.swing.AbstractButton.doClick(AbstractButton.java:376)
javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:842)
javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:886)
java.awt.Component.processMouseEvent(Component.java:6539)
javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
java.awt.Component.processEvent(Component.java:6304)
java.awt.Container.processEvent(Container.java:2239)
java.awt.Component.dispatchEventImpl(Component.java:4889)
java.awt.Container.dispatchEventImpl(Container.java:2297)
java.awt.Component.dispatchEvent(Component.java:4711)
java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535)
java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
java.awt.Container.dispatchEventImpl(Container.java:2283)
java.awt.Window.dispatchEventImpl(Window.java:2746)
java.awt.Component.dispatchEvent(Component.java:4711)
java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
java.awt.EventQueue.access$500(EventQueue.java:97)
java.awt.EventQueue$3.run(EventQueue.java:709)
java.awt.EventQueue$3.run(EventQueue.java:703)
java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
java.awt.EventQueue$4.run(EventQueue.java:733)
java.awt.EventQueue$4.run(EventQueue.java:731)
java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

MetaOmBot: Bug report from user

MetaOmGraph Error:
Email:
Comments:
here, I clicked on the star.
MOG version: v. 1.8.1
MOG date: February 20, 2020
OS: Mac OS X
Error log:

java.lang.ClassCastException: java.lang.String cannot be cast to edu.iastate.metnet.metaomgraph.playback.LoggingTreeNode
edu.iastate.metnet.metaomgraph.ui.ReproducibilityDashboardPanel.markActionsAsFavorite(ReproducibilityDashboardPanel.java:1054)
edu.iastate.metnet.metaomgraph.ui.ReproducibilityDashboardPanel$8.actionPerformed(ReproducibilityDashboardPanel.java:447)
javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289)
java.awt.Component.processMouseEvent(Component.java:6539)
javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
java.awt.Component.processEvent(Component.java:6304)
java.awt.Container.processEvent(Container.java:2239)
java.awt.Component.dispatchEventImpl(Component.java:4889)
java.awt.Container.dispatchEventImpl(Container.java:2297)
java.awt.Component.dispatchEvent(Component.java:4711)
java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535)
java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
java.awt.Container.dispatchEventImpl(Container.java:2283)
java.awt.Window.dispatchEventImpl(Window.java:2746)
java.awt.Component.dispatchEvent(Component.java:4711)
java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
java.awt.EventQueue.access$500(EventQueue.java:97)
java.awt.EventQueue$3.run(EventQueue.java:709)
java.awt.EventQueue$3.run(EventQueue.java:703)
java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
java.awt.EventQueue$4.run(EventQueue.java:733)
java.awt.EventQueue$4.run(EventQueue.java:731)
java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

MetaOmBot: Bug report from user

MetaOmGraph Error:
Email:
Comments:
Testing token, Ignore this
MOG version: v. 1.8.1
MOG date: February 20, 2020
OS: Windows 10
Error log:

java.lang.NullPointerException
edu.iastate.metnet.metaomgraph.ui.MetadataTableDisplayPanel.actionPerformed(MetadataTableDisplayPanel.java:2479)
java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1967)
java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2308)
java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:405)
java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262)
java.desktop/javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:279)
java.desktop/java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:297)
java.desktop/java.awt.Component.processMouseEvent(Component.java:6632)
java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3342)
java.desktop/java.awt.Component.processEvent(Component.java:6397)
java.desktop/java.awt.Container.processEvent(Container.java:2263)
java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5008)
java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321)
java.desktop/java.awt.Component.dispatchEvent(Component.java:4840)
java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4918)
java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4547)
java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4488)
java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2307)
java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2762)
java.desktop/java.awt.Component.dispatchEvent(Component.java:4840)
java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772)
java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
java.base/java.security.AccessController.doPrivileged(AccessController.java:389)
java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95)
java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745)
java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743)
java.base/java.security.AccessController.doPrivileged(AccessController.java:389)
java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742)
java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

MetaOmBot: Bug report from user

MetaOmGraph Error:
Email:
Comments:
MOG version: v. 1.8.1
MOG date: February 20, 2020
OS: Windows 10
Error log:

java.lang.NullPointerException
edu.iastate.metnet.metaomgraph.ui.MetadataTableDisplayPanel.actionPerformed(MetadataTableDisplayPanel.java:2479)
java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1967)
java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2308)
java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:405)
java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262)
java.desktop/javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:279)
java.desktop/java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:297)
java.desktop/java.awt.Component.processMouseEvent(Component.java:6632)
java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3342)
java.desktop/java.awt.Component.processEvent(Component.java:6397)
java.desktop/java.awt.Container.processEvent(Container.java:2263)
java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5008)
java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321)
java.desktop/java.awt.Component.dispatchEvent(Component.java:4840)
java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4918)
java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4547)
java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4488)
java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2307)
java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2762)
java.desktop/java.awt.Component.dispatchEvent(Component.java:4840)
java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772)
java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
java.base/java.security.AccessController.doPrivileged(AccessController.java:389)
java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95)
java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745)
java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743)
java.base/java.security.AccessController.doPrivileged(AccessController.java:389)
java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742)
java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

MetaOmBot: Bug report from user

MetaOmGraph Error:
Email:
Comments:
MOG version: v. 1.8.1
MOG date: February 20, 2020
OS: Windows 10
Error log:

java.lang.NullPointerException
edu.iastate.metnet.metaomgraph.ui.MetadataTableDisplayPanel.updateTable(MetadataTableDisplayPanel.java:1595)
edu.iastate.metnet.metaomgraph.ui.MetaOmTablePanel.addExtInfoTab(MetaOmTablePanel.java:2329)
edu.iastate.metnet.metaomgraph.ui.MetaOmTablePanel.<init>(MetaOmTablePanel.java:676)
edu.iastate.metnet.metaomgraph.MetaOmGraph.projectOpened(MetaOmGraph.java:1867)
edu.iastate.metnet.metaomgraph.MetaOmGraph.access$2(MetaOmGraph.java:1856)
edu.iastate.metnet.metaomgraph.MetaOmGraph$OpenProjectWorker.finished(MetaOmGraph.java:2339)
edu.iastate.metnet.metaomgraph.AnimatedSwingWorker$1.run(AnimatedSwingWorker.java:93)
java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
java.base/java.security.AccessController.doPrivileged(AccessController.java:389)
java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740)
java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:117)
java.desktop/java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:190)
java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:770)
java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
java.base/java.security.AccessController.doPrivileged(AccessController.java:389)
java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:740)
java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

Is-it--possible-to-reorient-labels-in-box-plots-so-that-they-are-vertical,-underneath-each-box?--would-be-very-helpful-if-possible

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

Describe the solution you'd like
A clear and concise description of what you want to happen.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
Add any other context or screenshots about the feature request here.

MetaOmBot: Bug report from user

MetaOmGraph Error:
Email:
Comments:
MOG version: v. 1.8.1
MOG date: February 20, 2020
OS: Mac OS X
Error log:

java.lang.NullPointerException
edu.iastate.metnet.metaomgraph.MetaOmProject.getAllDefaultRowNames(MetaOmProject.java:2409)
edu.iastate.metnet.metaomgraph.MetaOmProject.getRowIndexbyName(MetaOmProject.java:2347)
edu.iastate.metnet.metaomgraph.ui.StripedTable.getToolTipText(StripedTable.java:75)
javax.swing.ToolTipManager$insideTimerAction.actionPerformed(ToolTipManager.java:675)
javax.swing.Timer.fireActionPerformed(Timer.java:313)
javax.swing.Timer$DoPostEvent.run(Timer.java:245)
java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
java.awt.EventQueue.access$500(EventQueue.java:97)
java.awt.EventQueue$3.run(EventQueue.java:709)
java.awt.EventQueue$3.run(EventQueue.java:703)
java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

Show tips while MOG is busy

While doing some complex operations like loading projects, it would be great if MOG displays tips to user while waiting.

MetaOmBot: Bug report from user

MetaOmGraph Error:
Email:
Comments:
MOG version: v. 1.8.1
MOG date: February 20, 2020
OS: Mac OS X
Error log:

java.lang.NullPointerException
edu.iastate.metnet.metaomgraph.ui.TaskbarPanel$1.actionPerformed(TaskbarPanel.java:211)
javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
javax.swing.AbstractButton.doClick(AbstractButton.java:376)
javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:842)
com.apple.laf.AquaMenuItemUI.doClick(AquaMenuItemUI.java:157)
javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:886)
java.awt.Component.processMouseEvent(Component.java:6539)
javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
java.awt.Component.processEvent(Component.java:6304)
java.awt.Container.processEvent(Container.java:2239)
java.awt.Component.dispatchEventImpl(Component.java:4889)
java.awt.Container.dispatchEventImpl(Container.java:2297)
java.awt.Component.dispatchEvent(Component.java:4711)
java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535)
java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
java.awt.Container.dispatchEventImpl(Container.java:2283)
java.awt.Window.dispatchEventImpl(Window.java:2746)
java.awt.Component.dispatchEvent(Component.java:4711)
java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
java.awt.EventQueue.access$500(EventQueue.java:97)
java.awt.EventQueue$3.run(EventQueue.java:709)
java.awt.EventQueue$3.run(EventQueue.java:703)
java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
java.awt.EventQueue$4.run(EventQueue.java:733)
java.awt.EventQueue$4.run(EventQueue.java:731)
java.security.AccessController.doPrivileged(Native Method)
java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.