Code Monkey home page Code Monkey logo

batmass's Introduction

BatMass

Please visit http://batmass.org for more information.

A small introductory video

BatMass introductory video on YouTube
Check out http://batmass.org for more info.

Mass spectrometry data visualization tools

BatMass is a mass-spectrometry data visualization tool, with the main focus on being fast and interactive while providing comprehensive visualizations without any parameter tweaking. It is written in pure Java and built on top of the NetBeans Platform.

Citing

Please cite the following paper if you used BatMass or MSFTBX (data access library) in your work:
Avtonomov D.M. et al: J. Proteome Res. June 16, 2016. DOI: 10.1021/acs.jproteome.6b00021

Java compatibility

It looks like BatMass can't be run on java versions after 8. This is a problem of all NetBeans platform applications, not specific to BatMass.
On Linux, a tried solution is to install JDK 8 and to set java 8 as the java of choice. E.g. on Ubuntu:

  • sudo apt install openjdk-8-jdk
  • sudo update-alternatives --config java and select java 8 manually (if possible)
  • Modify <batmass-install-path>/etc/batmass.conf file. Uncomment and change jdkhome variable to something like:
    jdkhome="/usr/lib/jvm/java-1.8.0-openjdk-amd64/"

Important before you begin (Troubleshooting)

The only 2 parameters that you mgiht want to change after installing/unzipping is the amount of memory allowed to be used by BatMass and the path to JRE (Java Runtime Environment) to be used.
The startup parameters are stored in <install_path>/etc/batmass.conf

  • To change the memory limit, change default_options parameter, look for -J-Xmx in its value string. The default is -J-Xmx4G, which means 4Gb max will be allowed and if your machine does not have enough free memory, the JVM (Java Virtual Machine) might fail to start.
  • If you can't start the application and you are sure you have enough memory and a valid JRE/JDK installation, uncomment variable jdkhome in batmass.conf. Even though it's name starts with jdk it's actually just a path where ./bin/java binary can be found. E.g. use jdkhome="C:\Program Files\Java\jre1.8.0_31" on Windows, or jdkhome="/usr/lib/jvm/java-1.8.0-openjdk-amd64/" on Linux.
  • Windows users, if you've isntalled BatMass on your system drive in the default folder (most commonly C:\Program Files\batmass), you might need to run text editor as administrator, otherwise you won't be able to save changes made to batmass.conf.

Features

  • Support for the open standard mzML and mzXML mass spectrometry data types. We are hoping to bring native vendor format support as well.

  • Viewer synchronization. Link any number of viewers and zooming/panning will be synchronized across them. If you're viewing MS1 data in one view and MS2 data in the other the retention time is synchronized, while m/z is not. Open a detected LC/MS feature table or a peptide identification table, a double click on the row will open the corresponding spectrum, or bring you to the corresponding location in a 2D Map viewer.

  • Data access layer. For the Java developers out there, the highly optimized mzML/mzXML parsers can be used in any standalone Java program as a simple jar dependency. Parsing has been manually tuned to produce few garbage objects, thus minimizing time spent in GC (Garbage Collection), the speed is comparable to or better than in C/C++ implementations. The API for LC/MS data files gives access to most of the features supported by mzML/mzXML standards.

Installation

Download an installer for your system here.
If you choose to use the platform independent zip file (batmass.zip), you'll need to run the launcher for your system in <install_path>/bin, e.g. <install_path>/bin/batmass64.exe if you're running a 64 bit version of Windows. For linux-based systems there is <install_path>/bin/batmass shell script to start BatMass.

If you have an earlier version of BatMass installed, you have to manually uninstall it.

For more detailed instructions see the getting started guide.

Analytics

batmass's People

Contributors

chhh 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  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

batmass's Issues

JVM creation failed

I just downloaded Batmass on my Window7 computer, and when I run it I get the following error:

JVM creation failed

Any ideas?
Thanks
Alex

Problem using digits

Hello,
Great job on this tool !
I encounter a problem when I try to search for precise mass using digits, in the example windows it shows 'coma', and when I enter the separator, I can only use period, which returns an error (see below).

go to

Returned error :
information

Same with XIC :
image

which return full tic without subsetting anything.
I tried to change the system language settings to use period instead of coma, but it doesn't work.

Spectra export

Hi there,

I was wondering if there is any possibility for export of spectra as e.g. svg or pdf? Is this feature planned?

Cheers,
Johannes

BatMass for Win

I am trying to install the BatMass on Win10 PC and am still getting "JVM creation failed". My PC has 16GB RAM, 64-bit OS, installed it non-system location and still, it does not work. Any advice on how to install it?
Martin

Batmass does not run on Ubuntu 18. illegal reflective operation

Trying to run Batmass on Ubuntu 18 gives the following errors:

WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.netbeans.ProxyURLStreamHandlerFactory (file:/home/aaron/batmass/platform/lib/boot.jar) to field java.net.URL.handler
WARNING: Please consider reporting this to the maintainers of org.netbeans.ProxyURLStreamHandlerFactory
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release

In an effort to try and fix this, I updated the batmass.config to use the path to the directory of an older JDK (JDK 8) as $jdkhome. However, this does nothing and the program just fails silently. Is there some work around for this, or am I missing something completely (I could absolutely be misunderstanding what's going on!)?

writing mgf or mzXML /mzML files

Is it possible to use BatMass to create mgf, mzXML, or mzML files? (I know we can read mzXML files.) If it is possible, do you have some test code or example code that we could follow? If it's not supported in the library, do you have any suggestions for libraries that do support writing mgf, mzXML, or mzML files in Java?

could not load LC/MS data

Hi, I could not open a mzXML/mzML file, I can open it using openchrom or chemclipse, here is error message:
java.util.NoSuchElementException
at java.util.TreeMap.key(TreeMap.java:1327)
at java.util.TreeMap.firstKey(TreeMap.java:290)
at umich.ms.batmass.gui.viewers.spectrum.components.SpectraViewerComponent.(SpectraViewerComponent.java:115)
at umich.ms.batmass.gui.viewers.spectrum.SpectraViewerTopComponent.initSpectrumPanel(SpectraViewerTopComponent.java:157)
at umich.ms.batmass.gui.viewers.spectrum.SpectraViewerTopComponent.access$200(SpectraViewerTopComponent.java:64)
at umich.ms.batmass.gui.viewers.spectrum.SpectraViewerTopComponent$2.run(SpectraViewerTopComponent.java:115)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:728)
at org.netbeans.core.TimableEventQueue.dispatchEvent(TimableEventQueue.java:159)
[catch] at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

Directly reading Thermo .raw files

I saw that BatMass was thinking of being able to support direct reading of Thermo .raw files. Is this still true? If so, would it be possible to achieve this reasonably quickly/stably by calling the already-built Go library through Java (and some sort of Java-Go interface library)? (https://pkelchte.wordpress.com/2013/11/25/unthermo/ and https://godoc.org/bitbucket.org/proteinspector/ms/unthermo -- There's also probably a paper somehwere on this). Or, would it be easy to somehow convert the Go code to Java (to avoid the hard-to-debug library interface problems?)

If the above is happenning, would you also have any plans to do the same for Sciex .wiff files? (I know that Sciex has for the last two years provided unofficially a linux program that can convert their wiff files to XML (I think mzML, but it could be mzXML) so presumably there exists a way to write a nonWindows program to access their .wiff files.

BatMass for Mac

Hello Dmitry,
I installed the .dmg for MAC and followed your installer, but does not seem to open up?
My System OSX version 10.11.4 with 8 GB memory.
Java version j"1.8.0_25"
Java(TM) SE Runtime Environment (build 1.8.0_25-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.25-b02, mixed mode).

The older version was working fine/any suggestion?
BW,
Reza
P.S Nice work BTW

Problem with launching Batmass on Windows10

I had a problem launching batmass on the Windows 10

c:\Program Files (x86)\batmass\bin>ver

Microsoft Windows [Version 10.0.14393]

c:\Program Files (x86)\batmass\bin>java -version
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) Client VM (build 25.131-b11, mixed mode)

c:\Program Files (x86)\batmass\bin>

The launcher has determined that the parent process has a console and will reuse it for its own console output.
Closing the console will result in termination of the running program.
Use '--console suppress' to suppress console output.
Use '--console new' to create a separate console window.
Invalid maximum heap size: -Xmx4G
The specified size exceeds the maximum representable size.

I removed the -J-Xmx4G from the batmass.conf, and it then launched.

I added the -Xmx4G as a run-time option to my Windows Java.

pep.xml files

Hi,

When I try to import and open pep.xml files I get this error massage.

umich.ms.batmass.data.core.api.DataLoadingException: Pep xml file had no retention time information.
at umich.ms.batmass.filesupport.files.types.pepxml.providers.PepxmlFeaturesDataSource.load(PepxmlFeaturesDataSource.java:56)
at umich.ms.batmass.filesupport.files.types.pepxml.providers.PepxmlFeaturesDataSource.load(PepxmlFeaturesDataSource.java:35)
at umich.ms.batmass.data.core.api.DataContainer.load(DataContainer.java:101)
at umich.ms.batmass.gui.viewers.featuretable.FeatureTableTopComponent$3.run(FeatureTableTopComponent.java:108)
at org.netbeans.modules.progress.ui.RunOffEDTImpl$3.run(RunOffEDTImpl.java:275)
at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1443)
at org.netbeans.modules.openide.util.GlobalLookup.execute(GlobalLookup.java:68)
at org.openide.util.lookup.Lookups.executeWith(Lookups.java:303)
[catch] at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2058)

How can I open to these files?

Thank you

mzID import

Hi,

I would like to import mzID data into batmass. should it be done the same way as pepXML or is there any parsing that should be done prior to that?

Thanks!
David.

does not recognize mzrt.csv

I try to import features as mzrt.csv files but they are not recognised.
I'm on BatMass 201411181905, with Java 1.8.0_111 using a OSX 10.12.5

Cannot run Batmass on MacOS X 10.12.5

Hi,
I wanted to try Batmass, but I could not.
I installed Batmass (latest release). Installation did not lead to any error. After, I am not able to open the software in the application folder. Any idea why ?

Thank you,

screen shot 2017-08-04 at 2 48 06 pm

Batmass does not run under Ubuntu 18.04 with JDK 12

I installed BatMass v0.3.1 under Ubuntu 18.04 with the install script batmass-linux.sh. I've installed JDK 12. When I start the application the BatMass logo is shown in the center of the screen. But the application does not start.

Display custom data on MS 2 level

Hi there!

In your tutorial on project site there is a way how to overlap custom data from .mzrt.csv file with 2D map from .mzML file. Rectangles appear on MS1 level and when you switch to MS2 level they disappear. Is there any possibility to display them on MS2 level as well?

With respect,
Nikita

Batmass not lunching on Mac Sierra OS 10.12.5

Hello Dmitry,

Hope all is well, I download the latest version and successfully installed it on my machine, however it, does not lunch "The application "batmass" can't be opened". Any suggestion?

java version "1.8.0_112"
Java(TM) SE Runtime Environment (build 1.8.0_112-b16)
Java HotSpot(TM) 64-Bit Server VM (build 25.112-b16, mixed mode)

Reza

Clean build of BatMass fails with three errors

I want to read CEF files using BatMass and as I understand, this functionality is not provided by default in BatMass. So I am going through this tutorial in order to be able to add the umich.ms.batmass.filesupport.files.types.agilent.cef.data module to BatMass in this way.

While going through this tutorial, I get stuck in the very last step, i.e. clean build BatMass. Clean build of MSFTBX, BatMassLibs, and BatMassExternalSuite are all successful, but when I try to Clean and Build BatMass, I get 3 errors:

Desktop\batmass-projects\batmass-master\FileSupport\src\umich\ms\batmass\filesupport\files\types\mzml\MzMLLCMSDataProvider.java:42: error: cannot access AbstractFile
LCMSData lcmsData = new LCMSData(lcmsDataSource, scans);
class file for umich.ms.util.file.AbstractFile not found

Desktop\batmass-projects\batmass-master\FileSupport\src\umich\ms\batmass\filesupport\files\types\pepxml\data\PepxmlFeature.java:53: error: incompatible types: possible lossy conversion from double to float
float dm = Math.abs(sh.getMassdiff());

Desktop\batmass-projects\batmass-master\FileSupport\src\umich\ms\batmass\filesupport\files\types\pepxml\providers\PepxmlFeaturesDataSource.java:54: error: incompatible types: Double cannot be converted to Float
Float rt = sum.getSpectrumQuery().get(0).getRetentionTimeSec();

Windows 10
NetBeans IDE 8.2
Java Version 8 Update 172 (build 1.8.0_172-b11)
jdk1.8.0_172
jre1.8.0_172

Linux command give an error message when batmass start

next installing batmass with ./batmass-linux.sh and run batmass executable .
Batmass start and the icon appears.
When the icon desappear, nothing happens.

WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.netbeans.ProxyURLStreamHandlerFactory (file:/home/ofilangi/batmass/platform/lib/boot.jar) to field java.net.URL.handler
WARNING: Please consider reporting this to the maintainers of org.netbeans.ProxyURLStreamHandlerFactory
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release

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.