© 2016: Dr. Friedrich Menges Software-Entwicklung Spectroscopy Ninja | Spectrometer Hardware | Spectragryph Software Imprint
[Spectroscopy Ninja]

- optical spectroscopy software -

Contact & Connect: academia.edu Tumblr: Haunted by spectra Facebook: Spectroscopy Ninja LinkedIn: my professional self! Twitter: Spectroscopy Ninja Xing: another professional resume ResearchGate: my academic self send an email youtube channel for Spectroscopy Ninja
About Testimonials Download Licenses Contact News
July 14, 2022 Spectragryph version released

New functions:
- - -
- for XRF type spectra in EMSA file format, allow file extension *.emsa, in addition to *.msa
Bug fixes:
-Bugfix: File > About section shows correct license type information
-Bugfix: double-clicking a connected file type in Windows Explorer opens that file in Spectragryph
-Bugfix: Reading of Amptek *.mca XRF spectra without calibration and configuration info, spectra with fractional calibration positions
-Bugfix: improved reading of P.I. Winspec *.spe files (2 kind of errors)
-Bugfix: Save as JCAMP-DX: allow error-free saving of *.dx files for all file types
-Bugfix: Copy to Clipboard works again for EEM 2D plot
-Bugfix: for transmittance/reflectance spectra: correct results from adaptive advanced baseline removal & moving average smoothing
-Bugfix: made it work with IBSEN spectrometers again. Yay!

June 20, 2022 Spectragryph version 1.2.16 released

New functions:
increased maximal usable RAM from 2 to 4 GB
Reading of 12 (twelve) new spectrum file formats:
- Amptek XRF spectra (*.mca)
- Spectra Vista Corp. HR-1024i reflectance spectra (*.sig)
- Bruker AXS Handheld Inc. S1PXRF Spektrum (*.csv)
- Broadcom/ rgb photonics spectra from Waves software (*.spz), including multi-spectrum files
- Audiodev/ NXT ETA-ARC spectrometer (*.spk)
- OLIS SpectraWorks spectra (*.ols)
- Ocean Insight Nanoquest spectra (*.spectrum)
- Avantes Avasoft v6/v7 binary files (*.roh, *.abs, *.trm, *.irr)
- IRUBIS FTIR spectra (*.hdf5)
Reading of JCAMP-DX (*.dx/jdx) files with ASDF and DIFDUP compression (finally!)
Reading of Agilent *.sd/ *.kd files up to 50x faster
On reading Bruker OPUS binary files, optionally load all data blocks. Set option from File > Options > File > "load all data blocks from Bruker OPUS binary files"
On reading Bruker *.dpt files, ask for axis types (not clear from the file)
On reading Hitach *.uds files: detect and read multi-spectrum files
On reading of Agilent Cary 630 FTIR Microlab *.asp spectra, detect wavelength as x axis type
On reading and saving *.spc files, handle more x axis types (microns, GigaHertz, Pixels)
Spectra ribbon: added "Redo" functionality
Spectra ribbon: new y axis type "irradiance". Units are µW/cm^2/nm or mW/m^2/nm. Recognize irradiance data on reading Stellarnet, Avantes and Broadcom spectra
Spectra ribbon: show spectrum properties from button in Spectra tab's button row. Click on spectrum trace or legend text to update content for selected spectrum.
Spectra ribbon > Multi Cursor: show y value text in same colour as spectrum.
Spectra ribbon: allow use of HTML tags in custom axis names => general ability to use sub/superscript in axis titles
Spectra ribbon > Edit Legend text: show spectrum number in left-side gutter. Improved speed for "Replace" and "Replace by filename" functions.
Spectra ribbon > Spectroscope view: switch assigned spectrum by clicking on spectrum trace or legend text entry
Spectra ribbon: simultaneous multi-library search and search results display for multiple spectra. Access and configure options from Analyze ribbon
Identify ribbon: create a default search definition for newly started libraries
Identify ribbon: new "Library conversion" button for single-click creation of Spectragryph library from OMNIC and GRAMS library files
Identify ribbon: 20x faster "spectral similarity" search, beginning with the 2nd search run (due to array caching)
Identify-Ribbon: enter, keep and display meta data and molecular structures for reference spectra. Automated reading of meta data from JCAMP-DX files, OMNIC libraries and GRAMS SpectralID libraries. Automated reading of molecular structures from GRAMS SpectralID libraries.
Acquire ribbon: live multi-library search and search results display as post-processing option
Acquire ribbon: control FTIR spectrometers from Arcoptix, set hardware options from Acquisition settings. File > Options allows to asssign settings file and auto-connect on sw start
Acquire ribbon: control modular UV/VIS spectrometers from Broadcom (formerly: rgb photonics). Max. acquisition rate: 70 spectra/sec. File > Options allows to asssign settings file and auto-connect on sw start
Acquire ribbon: dynamic dark subtraction + sensitivity correction (info from EEPROM) for ASEQ as option in Acquire => device-specific settings
Acquire ribbon: measure Irradiance spectrum with ASEQ spectrometer (calibration taken from EEPROM)
Acquire ribbon: measure Irradiance spectrum with Avantes spectrometer (check "use intensity calibration" from Acquisition settings)
Acquire ribbon: measure Irradiance spectrum with Stellarnet spectrometers (only after assigning an irradiance calibration *.cal file from Acquisition settings)
Analyze ribbon > Analyze Mixture: quantitative analysis of a mixture of known components by multilinear regression
Analyze ribbon > Gaussian Deconvolution: create spectrum approximation from Gaussian peaks. based on found peaks and peak FWHM vaules. Finding threshold either noise-based or by percentage of max, Gaussian peak width taken from FWHM (=> still experimental, problem with strongly overlapping peaks)
Software UI/ icons improvements:
- App Styles: removed "Office2003" and "Office2007" styles, also "WinXP" and "WinVista"
- In File > Options: improved display of section tabs, more consistent display on changing app style
- Quick Access Toolbar (top row of software window): button size and spacing more Office-like
- Spectra ribbon: allow to switch background color when no spectrum is loaded
- Spectra ribbon: display wavenumbers and Raman Shift unit cm^-1 with "-1" as superscript
On saving as JCAMP-DX (*.dx), include ##MINY, ##MAXY and ##FIRSTY labels, more digits for ##DELTAX, ##FIRSTX and ##LASTX labels
Acquire ribbon > Settings: updated icons for post-processing options
new logo for Thunderoptics spectrometers
Bug fixes:
improved reading of Agilent *.kd-Spektren: check for occurence of NAN/ INF numbers
improved reading of Agilent *.kd-Spektren: improved end of file detection
improved reading of csv files (in case of first line =first line of data for files without header section)
improved reading of csv files (in case of data without header, but empty lines on top)
improved reading of csv files: files from Cary 630 FTIR spectromters working again
improved reading of Shimadzu *.spc spectra type II
improved reading of binary PerkinElmer *.sp spectra: if axisy type not found, use default types from File > Options > default for unknown axes
improved reading of binary PerkinElmer *.sp spectra: do not read beyond end of file if data block too small (PerkinElmer implementation failure)
improved reading of Labcognition *.uvd files (y axis type "T%" instead of "%T")
File open: on selecting "THERMO Nicolet OMNIC software (*.spa, *.spg)" as file type, show those files in file open window
On loading *txt files resp. *.csv file, have Axis type and Data type window colors follow the app style (in dark modes gray/black)
General: prevent error messages on user interactions when no tab is present (most buttons were affected)
Improved on-the-fly style reconfiguration for existing tabs on switching to dark app styles (Office 2016 black, Office 2019 black)
Automate section now fully compliant with dark app styles (Office 2016 black, Office 2019 black)
On "Duplicate this tab", use the current app style for the new tab
EEM ribbon: better adaption to dark app themes
Consistent use of line colour when processing with "delete original" option and then use Duplicate tab or Undo
Spectra ribbon > Custom Sort: have text visible when software is in dark style
Spectra ribbon: re-enabled spectrum selection in Dropdown
Spectra tab: On switching between spectra tabs, show the correct grid line style in the "Show Grid" button's dropdown menu
Spectra tab: no more error message, if using "Edit Legend text" after having used "Spectrum properties"
Spectra tab: always select correct spectrum in "Spectra" ribbon's spectrum properties dropdown list, when clicking on a legend text
Spectra tab: create Undo item on spectrum removal with CTRL-LeftMouse in spectrum plot
Spectra tab: On activating peak labels, show highest peak label for all y axis types with upward pointing labels
Spectra tab: allow manual adding of peak labels in manual peak labelling mode, after erasing all peak labels
Spectra tab: have "spectroscopy view" immediately follow changed x axis (on zooming, scrolling, ...
Spectra tab > Spectroscope view: if activated, show proper colours if "Transmittance 0-100%" is choosen, same for Reflectance%
Spectra tab: on calculating transmittance, reflectance or absorbance from intensity, adapt display to axis types of new spectra
Switched icons for MSC and Detrending functions back to correct display (in Process ribbon)
Identify tab: show some labels with correct text size
Identify ribbon: read OMNIC library files containing null characters
Advanced Baseline with "create baseline" option works again
Interpolate/Resample to pixel as x axis type now works for acquired Raman spectra that had been done with Pixel => wavelength => RamanShift transformation
Acquire-Ribbon: in left-side dropdown menu, reorganized "dark subtraction" and "blank subtraction"
Acquire ribbon: prevent unnecessary setting of exposure time while refreshing ribbon interface (this caused hickups and/or unexplained intensity jumps with some Stellarnet and Andor devices)
Acquire ribbon: For spectra acquired from USB webcams with exposure time in 2°x format, show correct unit msec (was seconds before)
File > Options > Acquire > auto-connect works again for all spectrometer types
allow "Spectrum from Image..." even if no spectrum is present
File > Save/Export Data > Batch Export Data: on changing folder name, start with current folder in folder selection window

December 15, 2020 Spectragryph version 1.2.15 released

New functions:
Show Grid: select between solid/ thicker grid lines and dotted/ thinner ones. Set permanently from File > Options
Spectra ribbon: new "Reverse list" button to invert the list of spectra
Acquire ribbon: control of and spectra acquisition from IBSEN spectrometers, implemented and tested with IBSEN Freedom and Pebble spectrometers
Reading of Arcoptix *.arcspectro spectrum files
Reading of Spectral Industries IrisCC *.hd5 spectrum files (binary HDF5 file standard)
Reading of THERMO GRAMS Spectral ID spectral database files (*.idx, *.itl, *.isl), for spectral library search
Reading of THERMO Nicolet *.spg spectrum files
Peak finding: find narrower/ nearby peaks (used for Peak labels and Peaks&FWHM)
Automate section: "Remove Peak" step with up to 30 peaks
Automate section: new options for "Peaks/FWHM" step: default save path, open csv
Automate section: open csv as new option for "Extract Data" step
X axis calibration: allow 4th order polynomial for calibration calculation
X axis calibration: reference values for wavelength calibration now with 3 decimal places
X axis calibration: allow plot interaction while calibration window is open
X axis calibration: create peak list with peak finding parameter prominence=1
Software UI/ icons improvements:
- New app styles: Office 2019 white, gray, black to comply with most recent Offce incarnations
- Reworked most button and tab icons for pixel-perfect, no-white-boundaries look in gray and black UI mode. Also got rid of most axis parts in icons.
- Acquire ribbon: Play icon for acquisition tabs and Acquire button
- Acquire ribbon: clearer icon for Connect button
- Added icons for chemometrics preprocessing buttons
- Changed icons for "Remove spectra"
Integrate: only wait for x range selection on first run, keep area boundaries afterwards
Flip through: allow minimum batch size of 1 (was 2 before)
As default folder for loading/ saving spectral data, create and use \public documents\Spectragryph folder instead of write-protected Spectragrpyh program folder
On saving and loading an automation sequence file, use this filename as the Automation tab's caption
On saving NIR spectra into a multi-spectrum FOSS file:
- interpolate all spectra to same x axis range and stepwidth
- maintain FOSS "Standardization" status and spectrum time&date
Bug fixes:
improved reading of Bruker files with processed data and quantitation or evaluation steps inside
Improved reading of Bruker files: allow all file extensions from *.1 - *.999
Reading of Bruker *.dpt files: takes axis types from "default for unknown axes" settings
Improved reading of ascanis Lambda-SPX *.dsp: correct reading of stepwidth
Improved reading of Agilent/HP 4583 Chemstation kinetics files (*.kd): also load first entry of multi-spectrum file
Plot: set peak labels font size same as axis ticks font size
EEM plots: improved auto-scaling of axes in EEM side plots on Unzoom
On saving as *.csv or *.dx, include x axis information for pixel spectra
Averaging: no more error for "pattern-based" averaging with "share the same" "last" characters option
In spectra properties, do not show the "averages = xx" line, if no averages were acquired
Derivative button: faster execution, fixed memory leak
Correct baseline subtraction and merging for spectra with identical number of datapoints, but differing x axis range
Corrected legend text for temporary baseline spectrum while doing advanced baselining
Corrected legend text for temporary smoothed spectrum while doing advanced smoothing
Automate: exported csv file from "Extract Data" and "Peaks/FWHM" with country-specific values separator (, or ;)
Automate: create "legal filenames" when saving plots or spectral data with "filename from legend text"
Automate: when saving plots, allow file saving for spectra that came from an acquisition window via the little yellow fork truck
Identify: faster database search with "derivative" option, also fixed memory leak
Acquire ribbon: when acquiring spectra from USB webcam, the clipping indicators for blue and red are now correct, was swapped before
Acquire ribbon: set method from "scope" to"uv-vis" , if acquired as absorbance/ transmittance with reference spectrum
Acquire ribbon: suppress "Get temperature failed: Acquisition in progress" error message while acquiring in continuous or loop mode or while averaging (for Andor cameras that would get stuck otherwise, like iDus. However, the temperature field will not update in that cases)

February 20, 2020 Spectragryph version 1.2.14 released

New functions:
"Flip through": for large spectra numbers, show only a subset and flip through in batches, change interval, activate automatically when loading many spectra files
Resample, interpolate spectrum to changed start/end value and stepwidth, changed axis types (also as registry option). Good for changing axis types permanently.
Acquire ribbon: control of and spectra acquisition from spectrometers from ASEQ, implemented and tested with ASEQ Rm1.
Automate ribbon: new processing step "Resample, interpolate"
Save as FOSS *.nir file. Made for Bruker and FOSS NIR spectra, should also work for other NIR spectra (no axis type checking involved)
Reading of Agilent/ HP4853 *.std spectral files
Reading of Labcognition Spectacle/ Shimadzu HyperIR binary *.uvd/ *.irs spectral files
Reading of Labcognition Spectacle/ Shimadzu HyperIR ASCII *.asc spectral files
Reading of Renishaw *.wdf spectral multi-files with sub spectra
Reading of *.txt files: offer "Pixels" as x axis type
Reading of Bruker files with *.00x naming scheme
Reading of Nicolet OMNIC *.spa files: recognize "% Reflectance" as y axis type
Performance improvement: Reading of THERMO/ Galactic *.spc files up to 30x faster (bigger improvement for bigger files)
Performance improvement: Smoothing algorithms "moving average" and "0% percentile" ~ 10x faster
Performance improvement: adaptive baseline subtraction ~ 10x faster
Performance improvement: when loading >100 spectra, set global line width = 1, plot display becomes 2-3x faster
Performance improvement: strongly reduced memory overhead for peak labels (~1% of previous amounts), display also 2-3x faster.
Performance improvement: EX + EM cross-section creation from EEM display while moving cursor now in real time, even for large data sets
Performance improvement: immediate filling of the dual list box form the "Select Spectra for Removal" function, even for large number of spectra
Performance improvement: minimal time lag between spectra for continuous acquisition from Andor cameras (only 1-2 msec). Same in burst and loop mode acquisition.
Plot zooming: selective vertical auto-zoom with SHIFT+ RightMouse button
Removed reading of Shimadzu *.ispd file type, couldn't create a reliable algorithm for all the file variations
EEM/ fluorescence ribbon: allow negative values for "step width", to cover spectra series acquired in backward direction
Command line: also allowd color HEX values when setting aspectrum line color via commandline
Use same default folder for acquisition settings as for other settings files
Bug fixes:
Improved reading of OMNIC *.spa files
Improved reading of HP/ Agilent 8453 *.sd files
Improved reading of Bruker OPUS files (use internal YFactor if CSF tag occurs)
Imprived reading of Analect *.asf files
Reading of JCAMP-DX files from Yokogawa spectrometers (data comes as off-standard 3-column x,y pairs)
Improved reading of THERMO Galactic *.spc files: correct timestamp value on reading multi-files with spcZIncrementTypeEven type for z values | correct time stamp for time unit other than seconds | on saving, use spectral time stamp instead of file date | on batch saving into multi-file, use legend text as comment instead if filename
Always update number of loaded spectra in lower status bar
Improved memory handling when removing spectra
Loading files via commandline commands works again if /newtab is contained
Acquire ribbon: correct reading of all pixel when connected to multiple Stellarnet spectrometers with differing pixel numbers. Set exposure time for all connected Stellarnet spectrometers at once
Acquire ribbon with USB webcam: prevent repeated error message after ROI change during active acquisition in continuous mode and activated background/ Blank subtraction or referencing
Acquire ribbon: several bugfixes around acquisition from Andor cameras
Identify ribbon: library search using 1st or 2nd derivative search works again
Automate ribbon: also process the last file when loading input files as batches with batch size = 1
Automate ribbon: correct zeroes padding in file name numbering for loaded file batches and batch export of single-spectrum files and combinations of both
Smoothing of spectra with "pixels" y axis type works again
Manuel peak labels: while "remove peak labels" is active, show mouse pointer as eraser
Spectra properties: show "seconds" as unit for time stamp display

October 01, 2019 Spectragryph version 1.2.13 released

New functions:
Waterfall display of spectra series from "Scale&Shift" button. Activate with option: "spread all spectra evenly", visually customize with simply dragging spectra into desired direction.
Colour palettes: creation of custom palettes, keep the permanently via Registry. Loading & saving of custom palette files.
"Colorize by property": colorize spectrum lines for a set of spectra, depending on value of a defined spectrum property (like max./min. value, peak area, peak position, ...)
Spectrum properties: setting same colour for all current spectra
New command line option for setting spectrum colour: "color=xx", example: c:\programfolder\spectragryph.exe c:\myfilepath01\myfile01.sgd color=3; c:\myfilepath02\myfile02.sgd color=4;
Advanced Smoothing: new smoothing option "baseline selective" for selective smoothing in the baseline y axis region. Works best for straight but noisy baselines.
Automate ribbon: new processing step "Normalize (Value)"
Automate ribbon: new processing step "Change Legend Text"
Automate ribbon: processing step "Extract Data" with own filepath for saving result csv file
Identify ribbon: option for normalization of resulting spectra within search results plot and search report. Define in database options and permanently in registry options.
Registry options: default filepath for settings folder. Used for loading &saving of files with acquisition settings, automation sequences, custom color palettes
Reading of binary Shimadzu Labsolutions *.ispd files (IRAffinity, IRTrace spectrometers)
Reading of binary Bruker OPUS files: recognize sample name from inside file, read Bruker multi-spectrum files from chromatography systems, interpret "ATR" type as absorbance.
Reading of Agilent Cary Microlab *.a2r and *.asp files: recognize"reflectance" type spectral data.
Reading of B&W Tek Raman *.txt files: new "same axis type for all" option
Reading individual timestamps for GRAMS *.spc multi-files. Also saves existing timestamps into *.spc files on data export.
Load image files (bmp, png, jpg, gif) into USB webcam acquisition window for spectrum creation from image cross-section. Also works with no webcam connected from separate "Spectrum from Image" button in Transform ribbon
X axis calibration: on calculation, copy calibration coefficients and peak list to clipboard (also with CTRL+C short keys)
Acquire ribbon: show progress bar for long exposure times and/ or while averaging
Acquire ribbon: if acquisition tab is not visible, visualize non-execution of functions from Acquire ribbon with red cursor sign. Show up/down state of buttons correctly after rejected button action.
Button for changing plot background colour is named "Canvas Colour" instead of simply "Colour"
Advanced Smoothing: decreasing smoothing interval at beginning and end of spectrum for better adherence to original spectrum
"Cut off spectrum part": allow visual changing of x axis area with two vertical cursors
Saving spectrum files: proposed filename in save window with added number, to prevent unintentional overwriting of existing files
Saving more digits when saving as csv files and for copying to clipboard
Acquire ribbon: update to new driver v2.0.27 for Wasatch Photonics Raman spectrometers. NOT backward compatible! Download from https://wasatchphotonics.com/binaries/drivers/Wasatch.NET/WasatchNET-2.0.27-Setup32.msi
Bug fixes:
Improved reading of binary Bruker OPUS files
Improved reading of Agilent Cary Microlab *.a2r and *.asp files.
Improved reading of binary Stellarnet *.ep1, *.ep2, *.ep3, ... episodic files
Improved reading of Hitachi *.usd files
Improved reading of csv files containing multiple spectra
Saving spectra as csv file: also save last value for Perkin Elmer spectral data
Correct saving of appstyle = Office2016black
Apply non-default app style from registry on software start
Shift&Scale: actually used offset mode is shown (was: always "xy")
Scaled Subtraction: use Apply button several times without renewed spectra selection. Track bar position always synchronized with scaling factor.
Identify ribbon: loading spectral database files created by Spectragryph v1.2.10
Identfy ribbon: update number of reference spectra before saving (in case some have been removed)
Automate ribbon: processing sequence will work also with "Use loaded spectra" as first step
Automate ribbon: corrected legend text addon for "Process: Normalize (Peak)" into " - normalized to max. peak"
Automate ribbon: avoid empty lines in results csv files from "Extract Data" step if loading input files in batch mode
Automate ribbon: prevent overwriting exported spectra file(s) if input files are loaded in batch mode
Automate ribbon: in processing protocol, show correct file names for exported spectra file(s) if input files are loaded in batch mode
Raman transformation: prevent execution if laser wavelength > end of spectrum
Acquire ribbon: disable "treat all spectra" as post-processing option
Acquire ribbon: allow auto-connect & auto-load settings also if Raman transformation is involved
Acquire ribbon: if loop mode acquisition starts from a blank acquisition tab: no more "exposure time exceeding loop time" error, axes displayed correctly, no more "list index = -1" error
Acquire ribbon: prevent creation of new Acquisition tab while acquisition is running
Acquire ribbon: turn off post-processing Raman transformation if no pixel=>wavelength x axis calibration is present (caused an error loop in continuous acquisition mode)

June 20, 2019 Spectragryph version 1.2.12 released

New functions:
Dark themed app style "Office 2016 black",
"Normalize by value" function: normalize spectra so, that a specific value is achieved at a specific x position
Spectra plot: display intensity spectra in log(intensity) mode
Spectrum properties: edit log text, insert own comments
"Use filename as legend text" as registry option
Reading of Edinburgh Instruments fluorescence spectra (*.fs), binary files
Reading of Stellarnet SpectraWiz episodic files (*.ep1), multi-spectrum binary files
Reading of binary files form Nicolet 5DX FTIR spectrometer (*.dr1, *.dr2, ...), a system from the 1980s (algorithm might not yield correct x spacing and y scaling, need more test data!)
Increased reading speed by 5x - 40x (stronger effect with larger files) for binary files from: FOSS (*.nir), Terraspec (*.asd, *.sco), AIT Analect (*.asf), Yokogawa (*.spe2), THERMO Mattson (*.abs), Perkin Elmer (*.sp), Varian Cary (*.bsw, *.dsw), GE Ultrospec (*.wsd), Princeton Instruments (*.spe), Nicolet OMNIC database files (*.lbd, *.lbt)
Reading exposure time value from Stellarnet ASCII files
EEM plot: display intensity values in logarithmic scale
Apply x axis calibration to Raman spectra (same-axis type Raman shift => Raman shift transformation)
Acquire ribbon: background live saving while acquiring spectra, several options fro naming, batch size, file path, etc.
Acquire ribbon: customized naming of legend text, several naming options, including timestamp with millsecond resolution
Acquire ribbon: set acquisition settings with "Apply to all" button for multichannel systems
Acquire ribbon: auto-connect with pre-defined spectrometer type on software startup, to be set as registry option
Acquire ribbon: set the state of post-processing functions as part of acquisition settings
Acquire ribbon: set the state of "use calibration" for Andor cameras and USB webcams as part of acquisition settings
Acquire ribbon: automated correction of system sensitivity for Avantes systems, yielding corrected intensity/ irradiance values (based on device-internal calibration data)
Acquire ribbon: lower limit for exposure time for Avantes devices, depending on spectrometer type
Showing selected colour for app colour and plot background color selector in registry options
Custom axis boundaries: increased displayed precision from 2 to 3
Acquire ribbon: Settings window subdivided into several pages: Acquisition, Calibration; post processing, Spectra naming, File saving
Bug fixes:
Improved reading of Avasoft v8.4 binary files, recognition of exposure time, channel ID
Improved reading of JCAMP-DX files: spectra exported from SersTech software, NIR spectra in JCAMP-DX format from Perten Instruments
Improved reading of Bruker OPUS binary files containing processed spectra: new registry option to select first vs. second available spectrum
Improved reading of Nicolet OMNIC files
Improved colour selection in spectrum properties window
No more unspecific errors after doing custom/ manual peak labeling
Execute x axis calibration for normal Spectra view without error message
Set file path, file name for spectral data inserted with copy&paste from clipboard
Always show blinking cursor (caret) when editing number fields (noticed in Raman Shift window)
Open unknown binary file: correct conversion of 32bit BigEndian Integer values
Execute Raman shift transformation in Acquire tab, even if no spectrometer is connected
Keep correct colour for x,y axis and axis ticks after changes in plot background colour
Acquire ribbon: prevent closing of software when continuous acquisition is running
Automate ribbon: processing step "Data Output: Save Data (Batch)" works again for "new file name" option
Automate ribbon: processing step "Peaks/ FWHM" showing results in csv files even inf spectra are not shown (with data input "from file" and no "live processing")
EEM plot: show title and axis labels for all axes in 3D view
EEM plot: use "intensity" label for vertical axis in 3D display

Feb 19, 2019 Spectragryph version 1.2.11 released

New functions:
Multi-step Undo function for each spectrum tab, set number of undo steps and activate/ deactivate from options menu
Transfer individual spectra between spectra tabs with "Drag & Copy" function
"Scale&Shift" function with option to move along x axis ony
"Snap to screen border" behaviour when moving software window near to screen border
Reading and saving of *.sgd binary files about 5 - 10 times faster. Also for database files. Large files up to 50x faster.
Also speeding up 5-10x for binary file types from: Shimadzu *.spc, Bruker *.0, Nicolet Omnic *.spa, Renishaw *.wdf, Horiba LabSpec *.ngs, HP Agilent 8453 *.sd *.kd, Agilent Cary 630 *.a2r, Avantes Avasoft v8 *.xx8
Reading of Agilent/ Cary 630 FTIR (Microlab software) *.asp and *.a2r file fomats
Reading of Enspectr *.esp files without text header
Options: set default axis types for spectral data files with unknown axis assignments (*.csv files mainly)
Open multiple files from command line (file listing with ";" separator), also when no instance was previously running
Adapt number of decimal places to x axis step width for saving as *.csv, as well as "Peaks&FWHM" and "Extract Data"
Raman Shift transformation: allow selection between using full spectrum range or a cut off value
Spectra properties: show laser wavelength for Raman spectra
Automate ribbon: added "Peaks&FWHM" as new processing step option
Automate ribbon: new option to process loaded files in batches of definable size. This removes "out of memory" problems for huge data sets
Identify ribbon: showing "sample" and "xx% Hit" information when displaying search results as spectrum plot
Acquire ribbon: select from the available range of resolution settings for USB webcams (image pixel size)
Acquire ribbon: updated to driver version v2.0.7 for Wasatch Photonics spectrometers (https://wasatchphotonics.com/binaries/drivers/Wasatch.NET/WasatchNET-2.0.7-Setup32.msi)
Acquire ribbon: abort current acquisition while averaging
Acquire ribbon: apply calibration parameters directly after calibration process, without new acquisition
Acquire ribbon: re-use calibration parameters after disconnect - reconnect
Acquire ribbon: allow to change acquisition parameters while doing continuous acquisition
Acquire ribbon: disallow disconnect while doing continuous acquisition
Acquire ribbon: for multi-channel acquisition, remove unmerged channel spectra after switching to merged mode
Acquire ribbon: double acquisition speed for multi-channel acquisition from Avantes devices in burst mode (300 spectra/ second at 1.05msec exposure time for a 9-channel system)
Acquire ribbon: new option "flip horizontal" for Andor cameras (in acquisition settings)
Acquire ribbon: control of Science-Surplus BTC-110 (from B&W Tek originally), contact me for details
Acquire ribbon: for acquired spectra, keep up to 40 spectrum acquisition parameters in binary Spectragryph *.sgd files, to be shown in "Log Text" section of spectrum properties
Default image type for "Save Plot as" changed from BMP to PNG
Showing one more decimal place in cursor and multi-cursor display
Acquire ribbon: moved display of averaging state in lower status bar to further right
Bug fixes:
Improved reading of Avantes *.rfl8 und *.trm8 files
Improved reading of Spekwin32 *.spv files
Improved reading of Spectragryph *.sgd files containing manual labels, that were created with version v1.2.7 - v1.2.9
Open spectra from command line with empty spaces in file path string, even when Spectragryph is already running
Reset command line switches when not used in new command line action
Minimize and refresh display of an instance without tabs
Use readable font colours for plot background colours of all grey levels
Improved display of spectrum traces as dashed and dotted lines, with continuing pattern independent from data point density
Correct display of area borders with negative x axis value for "Extract Data", "Center of Gravity" and integration
Allow x axis calibration for spectra with transmittance/ reflectance as y axis types
Corrected warning when attempting to do Jacobian axis transformation option with transmittance/ absorbance spectra
Calibration: allow copy&paste of values in scientific notation
Calibration: do not display "--" any more in empty coefficient fields
Acquire ribbon: open calibration window only if spectrum exists
Acquire ribbon: getting acquisition back to work with active calibration and all kind of post-processing options
Acquire ribbon: prevent use of post-processing "Cut off" without set border values
Acquire ribbon: when switching plot's x axis type, improved display of original pixel and/or wavelength for x-axis-transformed spectra
Acquire ribbon: some fixes for combination of multi-channel acquisition and merged spectra display
Identify ribbon: close empty Identify ribbon without error message
Identify ribbon: displaying reference spectra with correct axis types on first try after opening database
Identify ribbon: remove spectra from display (both reference and sample section) will not lead to removal from database any more
Transform ribbon: calculation of transmittance/ reflectance/ absorbance now correctly with option "treat all spectra"
Transform ribbon: omit result from reference spectrum with itself during calculation of transmittance/ reflectance/ absorbance

Oct 17, 2018 Spectragryph version 1.2.10 released

New functions:
ading of FOSS WinISI, ISIscan NIR spectra (*.nir)
Reading of *.spe files from Princeton Instruments Lightfield (v3.0 file format definition)
Reading of Andor *.sif files with pixels as x axis type
New function "Scale & Shift" in Plot/Views ribbon, for individually and reversibly scaling spectra and shifting them around
File menu/ Options: showing activation status and used license key
Transform ribbon: new function "x axis calibration" applicable to all loaded spectra. Set calibration coefficient values permanently in Options.
Optional use of "normalized Jacobian conversion" for area-preserving data transformation during x axis calibration and Raman shift transformation. Following this publication...
Keeping original data even after x axis calibration and Raman shift transformation, to be shown when displayed x axis type is switched back
Acquire ribbon: full support of spectrometers from Wasatch Photonics, including bad pixel exclusion, TEC cooling and use of x axis calibration coefficients
Acquire ribbon: full multi-channel support for Avantes devices. Automated channel-wise dark, reference and blank spectra handling, simultaneous acquisition, device-internal averaging, Settings window with module selection
Acquire ribbon: setting Start/Stop pixels for Avantes devices. Upgrade to v9.7 of avaspec.dll
Acquire ribbon: turning off TEC cooling for Andor cameras. setting of horizontal readout rate and preamp gain.
Acquire ribbon: Select pixel resolution for USB webcams from SEttings window, save into and load from settings file.
Peak labels: made peak detection more sensitive, prominence values range from 1-10, no more "0"
"Peaks & FWHM": minimal peak interval size changed from 10 to 4, default value is 40 (corresponds to prominence=3)
"Peaks & FWHM": showing ascending peak list for Raman spectra
File menu/ Options: new subdivisions, initially collapsed state for most panels
Automate ribbon: allowing 24 instead of 12 entry files for axis range in "Extract Data" proessing step
Acquire ribbon: allowing floating values for Avantes exposure times (like: 1.05 msec)
Acquire ribbon: moved sensitivity correction before Raman shift transformation
Raman Shift transformation: allowing up to 6 decimal places for laser wavelength value
Bug fixes:
Correct writing of #DATA TYPE label while saving as JCAMP-DX
Acquire ribbon: reading of exposure time from settings file works again
Acquire ribbon: reading settings file for USB webcam fully working again
Acquire ribbon: mostly fixed slowing down with increasing spectra number in loop mode
Acquire ribbon: reduced processing time for spectra acquisition from Andor cameras
Acquire ribbon: Avantes error messages with translated error codes
Acquire ribbon: corrected handling of burst count and loop time values, depending on acquisition mode
Acquire ribbon: stopping acquisition during continuous acquisition improved
Acquire ribbon: always allow ribbon change during continuous acquisition
Acquire ribbon: value range for Start/Stop pixels limited to number of pixels from Avantes devices
Acquire ribbon: allow change of exposure time during continuous acquisition
Correct reading of exposure time value from Andor *.sif files
Flawless change of displayed x axis type in all cases without error message
Kubelka-Munk transformation: now using the correct equation: k/s = (1-R)^2/(2*R), it used to be k/s = (1-R^2)/(2*R)
Acquire ribbon: Use of full floating point accuracy for calibration coefficients loaded from settings file and in Settings window.
Identify ribbon: Close fresh, empty Identify view without errors
x axis calibration maintaining correct y axis type for transmittance, absorbance spectra
Warning for attemps of using Jacobian conversion option with tranmittance, absorbance spectra.

June 26, 2018 Spectragryph version 1.2.9 released

New functions:
Reading of Enspectr RaPort *.esp Raman spectra files.
Reading of *.ols files from Ocean Optic's OOI LIBS software.
Reading of *txt files from JPL ASTER spectral library v2.0 (planetary science)
New option "same axis type for all files" on reading of spectral data with unknown axis types (*.txt, *.fak)
Analyze/ Acquire ribbon: new "Create Output value" function, to calculate a value from spectral proporties & send to output device like a DAC (first implemented: digital analog converters from Measurement Computing)
Acquire ribbon: multi-channel support with optional merge function. Tested for OceanOptics, Stellarnet (with quirks). Not sure about Avantes, Andor, ...
Acquire ribbon: control of devices from Wasatch Photonics. Works well, but not 100% finished (bad pixel exclusion not yet in use, driving TEC cooling and settings creation might be cumbersome. To be fixed soon.)
Acquire ribbon: control of TSI/Chemlogix Raman spectrometers, including laser power control. Only possible with TSI-provided license key.
Acquire ribbon: update of OceanOptic's OmniDriver from v2.43 to newer version. Works now with OmniDriver v2.46 and v2.56, but not any more with v2.43. Driver update required!
Acquire ribbon: much improved acquisition speed in burst mode (spectra will only be shown after burst is finished). Reached >200 spectra/second, depending on spectrometer type.
New y axis type: "counts/sec" (only shown if exposure time is present for the current spectrum)
Plot/Views ribbon: new "Close View" button for closing of spectra plots (shortcut: CTRL+W). Shortcut for "Multicursor" now changed to "F2"
New options to be set in registry: laser wavelength & cutoff for Raman transformation, values from custom boundaries
"Stacked view": much improved handling
"Change y axis type": shows only useful axis types, depending on the spectrum's axis type
Acquire ribbon: default value for shutter opening & closing time for Andor cameras is now 0 msec each.
Process ribbon: advance baselining & smoothing always on, parameters to be interactively set from drop-down menu
Spectrum properties: improved retrieval from files and display of exposure time & laser wavelength
"Duplicate plot" carries over more plot properties (state of peak albels, spectroscope view, stacked view, multi cursor, ...)
"Custom Boundaries": insert current border values, if plot in zoomed state
Maintain zoom state if spectra present and plot is zoomed
Bug fixes:
Plot: fixed font color and background of peak label with black plot background. Peak labels now without visible borders.
Plot: correct transfer of font and label colors while executing "duplicate tab"
Correct reading of line color/ type/ thickness when reading from *.spv and *.sgd files
"Copy to Clipboard" corrected for x axis type "wavelength µm"
Acquire ribbon: linear calibration scheme works again
Acquire ribbon: save/ load settings corrected for calibration sets of orders > 1 and wavelength type
Acquire ribbon: changing view without error while running continuous acquisition
Acquire ribbon: allow Blank subtraction while "Cut Off" post processing option is active
Acquire ribbon: "Remove all spectra" works now while running continuous acquisition
Acquire ribbon: apply settings triggered an error for OO moduls without TEC cooling
Acquire ribbon: show down state of "Dark", "Blank" buttons and those in post processing area immediately after pressing
Allow negative values for derivatives from transmittance/ reflectance spectra
Improved numbering scheme for file name's leading zeroes while doing Automation/ Batch Export
Automate ribbon: fixed memory leak when using "Extract Data" with Integral with individual baseline
"Custom Boundaries": only set values with "Apply" button
Plot/Views ribbon: state of legend's "transparent" and "floating" button now correct for newly created Acquire, Automate and Identify plots
"Cut off spectrum part": suggested values making more sense for Raman spectra
Keep "Flip axis" state for certain operations, correctly display button's down state
Copy&paste of spectral data with x axis type = Pixels
Calling Spectragryph from command line with file name for reading now with improved speed
Much improved reading algorithm for all Bruker OPUS binary spectrum files (*.0, *.1, ...) including all y axis types (absorbance, transmittance, reflectance, Raman, ??)
Improved reading of exposure time for *.spe files from WinSpec software (Roper Scientific, Princeton Instruments) and Renishaw WiRE1.5/2.0 software
Correct reading of Cary *.dsw/ *.bsw files with y axis = %transmttance, %reflectance

Jan 17, 2018 Spectragryph version 1.2.8 released

New functions:
Reading of ASD Terraspec reflectance spectra (*.asd, *.sco)
"Peak Labels": new button for "Restore autom. labels"

" Peak Labels": new label type for automated labelling of isotope peaks in Gamma spectra
Acquire ribbon: automated loading of device-specific settings file on connect. Permanently assign a settings file in Options window.
Acquire ribbon: changed "USB webcam" control to use Microsoft's DirectShow interface=> wider range of cameras accessible, direct control of more settings &parameters.
Acquire ribbon: direct access of exposure time for those USB webcams that allow it via DirectShow. Turning off AutoExposure, AutoWhiteBalance, AutoBrightness, AutoSaturationControl.
Acquire ribbon: framegrabbing window for USB webcams now has "full pic." button to fully show large images
Acquire ribbon: define USB webcam settings in Settings window, save & load as device settings file.
Acquire ribbon: new device type: TSI Raman. only shown after activation with a TSI-provided license key.
Acquire ribbon: new post processing function: "correct sensitivity", for creation of "true spectra" with emission measurements (fluorescence, Raman, light sources)
new keyboard shortcuts: Ctrl+Alt+P for"Remove a Peak"; Shift+Ctrl+V for "Create New Spectra View"
keyboard shortcut CTRL+P had two meanings. Print Preview has now Shift+CTRL+P
Bug fixes:
Automation: no more duplication of spectra when repeating a processing sequence with "from file" as data source
Automation: "Subtract" function now correctly done
Acquire: choose from multiple USB webcams present
Acquire: disconnect while running continuous acquisition
Acquire: more consistent behaviour during connect/ disconnect and failed connect procedures
Acquire: correct display of webcam images of all sizes. Use of ROI working again in all circumstances.
Acquire: logging of exposure time activated for OceanOptics devices
Acquire: removed memory leaks for Stellarnet, OceanOptics (partially), USB webcams, calibration process
Behaviour of horizontal gridlines in stacking mode (Stacked View)
Improved visibility of transparent legend and y axis lettering with black plot background

Nov 29, 2017 Spectragryph version 1.2.7 released

New functions:
Display of transmittance/ reflectance in 0 - 100% scale
"Peak Labels": implemented custom peak labeling: remove all peaks | remove indiv. peaks | edit label text | move label text box | manually add label to any spectrum position
"Peak Labels": special labelling function with element names for XRF and LIBS spectra, with customizable position tolerance
"Peak Labels": interactively select a range of elements from periodic table for XRF & LIBS spectra peak labels
"Peak Labels": automatically adjustment of "arrow length" for peak labels, depending on window size and available space
"Peaks & FWHM": add XRF & LIBS peak assignments to list of peaks, with control over position tolerance and selection of elements
Save custom peak labels together with spectra into Spectragryph *.sgd files and load and display again
Permanently set
labeling parameters in Options.
Calling spectrum acquisition for a connected spectrometer from command line with /acquire switch. Syntax: C:\myprogramfilepath\Spectragryph.exe /acquire C:\myspectrumfilepath\myspectrum.sgd
Calling processing automation sequences from command line with /automationtab switch. Syntax: C:\myprogramfilepath\Spectragryph.exe /automationtab C:\myspectrumfilepath\myspectrum.sp C:\mysequencefilepath\mysequence.sgps
Moved "Close" button onto each plot window tab individually
For easier hitting, increased position tolerance for clicking on spectra to 2 pixels
Bug fixes:
Stellarnet *.trm and *.abs files are recognized again
Y axis assignment correct with spectra from B&W Tek BWSpec software
Improved shortcut handling: only active when inside plot window

Oct 23, 2017 Spectragryph version 1.2.6 released

New functions:
New licensing technology implemented.
New function "Scaled Subtraction" (in "Transform" ribbon).
"Acquire" ribbon: Control of TEC cooling for OceanOptics devices.
"Acquire" ribbon: "Mask dark pixels" and switching fan on/off option for OceanOptics devices.
"Acquire" ribbon: Show calibration coefficients in Settings window for Stellarnet + OceanOptics.
"Acquire" ribbon: include time values when exporting measured spectral data via clipboard (when measured in loop mode)
"Peaks & FWHM": Copy peak lists of all spectra to clipboard together.
"Peaks & FWHM": New parameter ""interval size" for fine-tuning of peak finding
Edit spectrum names after double click onto legend box
Print dialog now has "Printer Settings" option
Ignoring unknown file formats without error message
Change of axis titles and axes ranges requires double click.
Showing hints for QuickAccessToolbar
Bug fixes:
Improved reading of HP/ Agilent 8452 *.sd spectra (x axis range & step width, finding correct sample names for multi-spectrum files)

"Acquire" ribbon: Connect - Disconnect - Reconnect sequence correctly working for OceanOptics modules
"Acquire" ribbon: consider start pixel and stop pixel settings for Avantes modules
"Acquire" ribbon: show OceanOptics settings
More consistent handling of "Peak label" and "Spectroscope View" when used over multiple plot windows
Parameters are kept for "advanced baseline" and "advanced smoothing"
Remove preview spectrum trace after canceling of "advanced smoothing"
Correctly apply registry-saved options for plot layout with all new plots
More consistent behaviour of "multi cursor" when used over multiple plot windows and after change of x axis type
Execute "Custom Boundaries" for y axis correctly in unzoomed state

Sept 27, 2017 Spectragryph version 1.2.5 released

New functions:
"Acquire" ribbon: support of Avantes devices
Reading of Avantes Avasoft kinetic series in *.str8 file format
Improved reading of Ultrospec *.wsd files: multifiles possible, true legend recognized from inside the file.
Expanded range of recognized Shimadzu *.spc files, should work now for all files from the last 15 years or so.
Bug fixes:
Corrected behaviour of commandline switches. Was only right in trial version before.
Saving of acquired live spectra with correct filename and type
Export of acquired Raman spectra into *.dx files with correct measurement type designation

Aug 24, 2017 Spectragryph version 1.2.4 released

New functions:
"Acquire" ribbon: timestamp with millisecond resolution
New "Transfer"-Button in "Spectra" ribbon and "Acquire" ribbon, to send spectra to Automate tab for processing or to Identify tab for material identification
Reading of Renishaw spectral files in *.wdf file format
Bug fixes:
Stellarnet control now also for modules with 512 and 1024 pixels
Correct scaling for emission spectra in "Spectroscope View", no more need to normalize
Minimize button back to work
Bugfix for opening of old *.spv spectral files

Aug 14, 2017 Spectragryph version 1.2.3 released

New functions:
"Acquire" ribbon: support of Ocean Optics devices
Bug fixes:
"Acquire" ribbon: averaging only active with activated checkbox
"Acquire" ribbon: some spectrum property fields now get filled for live spectra (method, exposuretime, laser wavelength, ...)

Aug 09, 2017 Spectragryph version 1.2.2 released

New functions:
"Acquire" ribbon: support of Stellarnet devices
"Acquire" ribbon: support of Andor cameras
"Acquire" ribbon: x axis calibration function, transforms pixels to wavelength or even directly to RamanShift
"Acquire" ribbon: get, set, load and save device parameters
"Acquire" ribbon: new acquisition mode: "additive"
Bug fixes:

June 29, 2017 Spectragryph version 1.2.1 released

New functions:
Bug fixes:
smoother display of spectra with large linewidths (bug introduced with v1.2.0)
Showing all calculated peak labels (bug introduced with v1.2.0)

July 26, 2017 Spectragryph version 1.2.0 released

New functions:
"Automate" tab implemented, providing the definition and execution of processing step sequences with any number of spectra
"Acquire" tab implemented, providing spectrometer hardware control and live spectra acquisition, starting with USB webcam as first device type
Reading of EMSA/ MAS spectra (*.msa), standard file format for XRF/ EDS data
Reading of AIT/ Analect *.asf spectral files
Reading of Hitachi UV Solutions *.usd spectral files
Reading of parameter sections into Logtext area for MSA, JCAMP-DX and RRUFF files
Reworked "Batch Export" function, added 4th export file format (*.sgd)
All recognized file formats now allowed for correction curves in Fluorescence/ EEM area
"Extract Data": output of spectral range and single value x value
Bug fixes:
"Extract Data": improved behaviour (plot & calculation) when using "center of gravity" on narrow peaks
"Center of gravity": correct calculation for very narrow peaks. Really using individual baselines
Improved zooming, scrolling behaviour when using both "stacked view" and "custom boundaries"
Correct calculation of "Merge spectra" for Raman spectra and spectra coming in wavenumbers
Correct calculation of final data point for derivatives with pre-smoothing
Install file: program linkage to Spectragryph *.sgd file forat was broken
Improved reading of WinSpec *.spe files, in case of Raman type
Improved reading of Shimadzu *.spc files
EEM display: error display with mouse tracking removed

June 13, 2017 Spectragryph version 1.1.2 released

New functions:
Bug fixes:
Reading of binary Beckman Coulter *.scn files works again
Removed the "CTRL+Z" shortcut, as there is no undo function
Creating a 2D EEM plot from a series of spectra has now CTRL+ALT+Z shortcut
No error on creating a 2D EEM plot from a series of spectra, when no spectra present
Consistent behaviour of "Hide" button & dropdown control
Correct spectrum trace emphasized when clicking legend text while hidden spectra present
Loading conversion dll for ANDOR *.sif files only when file opeing takes place => eventual "msvcp100.dll troubles" will not prevent software start
Identify features: streamlined behaviour, capturing erroneous inputs, showing some more hourglasses on lengthy procedures

May 29, 2017 Spectragryph version 1.1.1 released

New functions:
Duplication of tabs
Remove a single peak (by linear interpolation)
Set fixed x/y axis boundaries, activate with "Custom boundaries"
Reading of B&W Tek BWSpec spectral files (*.txt)
Reading of Varian Cary WinUV binary spectral files (*.dsw, *.bsw)
Reading of NT-MDT Spectral Instruments binary Raman files (*.mdt)
Updated listing of file formats.
Bug fixes:
More consistent behaviour of "Floating Legend" option, global setting applies everywhere
Update of spectrum number display (lower status bar) after removal with CTRL+Click
Correct plot update after "advanced baselining"
Improved reading of Nicolet OMNIC *.spa files
Improved reading of Bruker OPUS files, Raman files get recognized
Reading of JCAMP-DX spectra with "XY..XY" datatype works again

May 15, 2017 Spectragryph version 1.1 released

New functions:
"Identify" tab implemented, providing spectral database creation, spectral search of unknown samples and search report generation
Reading of OMNIC spectral database files (*.lbt, *.lbd)
Recognition of measurement method on reading of spectral files
Reading the parameter section for Horiba *.ngs files, calculation fo y values as counts/sec for Raman type spectra
Opening spectral files by calling Spectragryph from the command line ("DOS window"), into a single instance for multiple calls (per default).
Command line switches \multipleinstances und \newtab for controlling file opening behaviour
During installation, Spectragryph is defined as default program for opening *.spv and *.spg spectral files. This allows to open files by doubleclicking them in Windows Explorer.
List of file types in FileOpen dialog now alphabetically ordered (by manufacturer)
Lower boundary for transmittance values changed from 1E-6 to 1E-10
Bug fixes:
Entering negative values allowed for "x Offset/Stretch" and "y Offset/ Stretch" functions
Removing spectra from reading Spekwin32 *.spv files works now.
Display of transmittance spectra after using "advanced baseline" corrected
Lower boundary feature activated again for "Peaks&FWHM" function
Improved reading of Nicolet OMNIC *.spa files
Correct behaviour of "Show Grid" after disabling it in preferences

March 20, 2017 Spectragryph version 1.0.7 released

New functions:
Read & save the new binary multi-spectrum Spectragryph file format (*.sgd)
Read spectral data files with *.txt file extension (assuming two-column, single spectrum data)
Reading the "Logtext" part of *.spc files and extracting information, saving the logtext for *.spc and *.sgd files
New parameters for "Extract Data": x,y,z position
Editable tab names for all "Views"
"Transform to Raman shift" now accepts negative start values (for showing anti-Stokes area)
Lower boundary for transmittance values changed from 1E-6 to 1E-10
Bug fixes:
Peak finding didn't work reliably for minima
"area under curve" calculation from "Extract Data" function always used "individual baseline" first, neglected user selection
Line position for center of gravity didn't update after user interaction
Some parameters for "advanced baselining" were not remembered after closing the baseline settings window
Removed interference with short keys (DEL, BACKSPACE, ...) when entering values into edit fields
Fixed erroneous peak position value when using transmittance scale in "Extract Data" function
Fixed error message after showing/ hiding legend
Web address in "About" window works now
Saving of *.spv files improved (method gets also saved)
Improved reading of *.spc files, Avantes *.irr8 files, Horiba *.ngs files, Jena Analytik WinAspect files and Roper Scientific *.spe files

Feb 14, 2017 Spectragryph version 1.0.6 released

New functions:
Fully implemented support of this x axis types: electron volt (eV), kilo-electronvolt (keV), frequency (THz)
Fully implemented support of this y axis types: counts, counts/sec, arbitrary units, Kubelka-Munk units, log(1/R) units
Reading of Thermo Noran Wintrace XRF spectral files (*.spc)
Log(1/R) transformation for reflectance spectra
Fontsize for peak labels now changing together with axis labels
Improved preset boundary values for "Spectrum part cut off" function
Bug fixes:
Switching plot's x axis from µm to nm now works smoothly
Export as JCAMP-DX (*.dx): now really always with '.' as decimal separator
Improved reading of erroneous Avantes *.raw8 files
Improved installation routine for support of Andor*.sif files
Improved reading of RRUFF database files (*.rruff) with long header
Resolved file format collision for Thermo Mattson *.abs, StellarNet *.abs and Avantes *.abs8 files
Improved reading of Avantes Avasoft 8.x files, making compatible to new Avasoft version

Jan 31, 2017 Spectragryph version 1.0.5 released

New functions:
Reading of timestamp information for Agilent 8453 *.kd kinetic series
Kubelka-Munk transformation for reflectance spectra
Multiplicative scatter correction (MCS) for chemometrics preprocessing of NIR files
Standard normal variates (SNV) for chemometrics preprocessing of NIR files
Detrending of global slope, for chemometrics preprocessing of NIR files
Showing popup explanation for advanced baselining & smoothing
Peak Labels: lower limit is now "2" for x, y digits setting
Bug fixes:
Export as JCAMP-DX (*.dx) always using "." as decimal separator
Improved reading of USGS reflectance spectra (U.S. Geological Survey, https://speclab.cr.usgs.gov/spectral-lib.html)
Improved reading of Horiba Labspec *.ngs spectra files
Improved reading of HP/ Agilent 8453 *.sd spectra files

Jan 26, 2017 Spectragryph version 1.0.4 released

New functions:
EEM plot with movable, hideable legend
Tabs with spectra plots get numbered names, for better distinction
Colour palettes: removed white, yellow, light components for better visibility and printability
Bug fixes:
Cut off spectrum part: allow entry of negative values as boundaries
Change background colour: immediate colour change after selection
Spectrum plot: Grid & Axis colour gets adapted on background colour change, for better visibility
Normalize (area): correct results for spectra with "Raman Shift" x axis type
Advanced Baseline: improved positioning of linear baselines
Spectrum plot: y axis tick values with proper amount of positions and less rounding
Spectra tabs: error-free opening a new tab after closing all tabs before
Peak labels: now works also for cut-off tabletop peaks
Reading ANDOR files: on some systems, Spectragryph didn't start at all, due to DLL dependencies. Should work now on all systems and read ANDOR *.sif files

Jan 17, 2017 Spectragryph version 1.0.3 released
New functions:
Spike Removal: option for maximum spike width
Averaging: "numbering-based" grouping option
Reading of ANDOR Solis spectral files (*.sif), works on single- & multi-frame files and kinetic series
Reading of HP/ Agilent 8453 Chemstation kinetic series (*.kd)
Reading legend texts of HP/ Agilent 8453 Chemstation multifiles
Reading of Avantes multichannel files with differing pixel numbers between channels
Reading timestamps for WinAspect kinetic series
File extension gets removed from legend texts,when filename is used as legend text
Clicking on a spectrum scrolls legend to show spectrum name if many spectra loaded
Advanced Baselining: 5x increased speed for large spectra (> 5000 data points)
Improved reading speed 25x for Agilent 8453 *.sd files
Updated supporter list in About section
Bug fixes:
Extract Data: now takes the highest instead longest-wavelength peak when using the peak position parameter
Batch Export: works now with all parameter combinations
Switching x axis type from wavenumbers to wavelengths sometimes resulted an error message
Clicking on spectrum or legend text now triggers all required changes within the Plot ribbon
Improved behaviour for peak finding
Dec 22, 2016 Spectragryph version 1.0.2 released
New functions:
Reading of binary files from Analytik Jena's WinAspect software for Specord spectrometers (*.dat)
Direct removal of spectra when clicked with CTRL + mouseclick
Hide spectra with CTRL+mouseclick in "Hide Spectra" mode
Remove hidden spectra in "Hide Spectra" mode
Spectra averaging with mean or median function
Semi-automated grouping options for spectra averaging (similar to spectra merging)
Zoom/Pan/Selection options with mouse now shown as message window after click on Info button
Bug fixes:
Improved spectra averaging for spectra with differing x axis ranges
Dec 17, 2016 Spectragryph version 1.0.1 released
New functions:
Reading of Thermo Mattson WinFIRST *.abs binary files.
Reading of HP / Agilent 8453 Chemstation *.sd file (single spectrum, multi spectrum, no kinetics)
Reading of Horiba Labspec *.ngs files (Raman spectra)
Reading of Avantes Avasoft v8.x files (*.abs8, *.raw8, *.trm8, *.rfl8, *.irr8, *.abs8x, ...)
Peak finding improved with cubic fit for sub-pixel accuracy, used in three places
Merging of spectra with big or little overlap or gaps inbetween, multiple selection options
Install file is now code signed with a dual sign code signing certificate for improved installation on Windows
Advanced Baselining: Parameters are live shown in the window for better repeatibility
Button Hints: "show time" increased from 2.5 to 5 sec for better readability
Bug fixes:
Improved reading and better axis type recognition for files from Nicolet OMNIC, JASCO, Bruker OPUS
Changing "app style" made more consistent
Cursor was sometimes stuck within plot view
Integration/ Extract Data: individual baseline was not really individual, works now
Axis types were ignored while reading Spekwin32 *.spv spectra
Copy from clipboard: now recognizes "," when there is "TAB" as thousands separator
Nov 11, 2016 Spectragryph version 1.0 released
Spectragryph is an all-new software, and at the same time based on proven algorithms developed for Spekwin32 over 15 years. This is the first entry of the Spectragryph change history, and I am sure it will change the history of spectroscopy software.


© 2001-2019: Friedrich Menges. Last Change: 14 July, 2022
Privacy statement: this website has no 3rd party cookies, it will neither track nor analyze you. No Google Analytics. No paid advertising. No selling of user data. No fuss. No shit. Only useful content for Spectroscopy Ninjas.