/PySAT_Point_Spectra_GUI

This repository contains code for a GUI for analyzing LIBS and other point spectra.

Primary LanguagePythonOtherNOASSERTION

Build Status Coverage Status

Installation

  • Click and download Anaconda Python 4.1.1. The pysat package and UI has been designed with 4.1.1.
  • Newer versions of Anaconda breaks this package. This will be remedied in later releases.
  • If you're using a non-Windows machine go to Anaconda's download page and pick up the 4.1.1 package
  • Download or clone this repository
  • Download the PYSAT library from here github.com/USGS-Astrogeology/PySAT

PYSAT UI

PYSAT splash

  • The UI's backend is designed and created in Python with the QT framework
  • The UI is being built to work as close to the original libraries as physically possible

Current Road Ahead

  • Working Modules on UI
  • Selecting functions from Menubar adds functions dynamically
  • Shortcuts such as Ctrl S to save
  • Embedded Plots and Graphs from data collected
  • Package all python packages: sklearn, scipy, numpy, matplotlib, pysat for user consumption It has been discovered that the user can download Anaconda, and run our files as normal.
  • Add ability to delete modules
  • Add ability to save plots in personal files
  • Add ability to save state of GUI, i.e. all number that user inputs will be there again after closing GUI
  • Add ability to save data frame at any point in the workflow
  • Setup a way to select points on a scatter plot.

Control Flow

FlowChart

  • The user begins by starting PYSAT_MAIN.
  • PYSAT_MAIN will begin by loading the splash screen and all necessary UI pieces
  • PYSAT_MAIN will then forward control to PYSAT_UI
  • PYSAT_UI displays the mainframe in which the UI's submodules will be loaded into
  • PYSAT_UI will then foward control to each submodule of focus
  • Each submodule builds the collective UI library
  • Each submodule fowards control to PYAT_FUNC which holds all the necessary logic functions
  • These logic functions then forward commands to the various PYSAT and Anaconda libraries
  • The values are then returned back up to PYSAT_FUNC which will then deal with changed data