|Build Status| |Coverage Status| |Install with conda|
nanonispy
=========
A small library written in python 3 to parse Nanonis binary and ascii
files.
Nanonispy was made in needing to do a lot of analysis for scanning tunneling microscopy (STM) data, and thought this would be good practice in creating a proper python library. That being said it is in no way foolproof and if anybody else actually uses this please let me know if you run into issues.
Nanonispy can read Nanonis grid, scan, and point spectroscopy files. This means it will read the file header and parse that into a somewhat useful dictionary for later use, as well as read in the binary/ascii data in a relatively general way to accomadate data with multiple channels stored, or custom spectroscopy experiments.
Requirements
------------
Currently written and tested with
- python 3.9
- python 3.8
- python 3.7
- python 3.6
Depends on
- numpy
Install
-------
For the most up-to-date version, install from github as pip and conda packages are not updated as frequently.
pip
~~~
::
pip install nanonispy
conda
~~~~~
::
conda install --channel https://conda.anaconda.org/underchemist nanonispy
github
~~~~~~
Simply clone this repo and run
::
python setup.py install
Basic usage
-----------
Once installed, you should be able to import it to any python script or ipython session.
.. code:: python
import nanonispy as nap
Then given a file,
.. code:: python
grid = nap.read.Grid('/path/to/datafile.3ds')
You can look at the attributes and methods to determine the information
available.
Running tests
-------------
Similar to the install, except run
::
python setup.py test
. If you have the nose module installed, it's as simple as
::
nosetests
.
You can also see coverage of the tests as well as ignore the test
discovery of numpy core packages (don't quite understand why it does
this) with
::
nosetests --with-coverage --cover-branches --cover-package=nanonispy
.
.. |Build Status| image:: https://travis-ci.org/underchemist/nanonispy.svg?branch=master
:target: https://travis-ci.org/underchemist/nanonispy
.. |Coverage Status| image:: https://coveralls.io/repos/underchemist/nanonispy/badge.svg?branch=master&service=github
:target: https://coveralls.io/github/underchemist/nanonispy?branch=master
.. |Install with conda| image:: https://anaconda.org/underchemist/nanonispy/badges/installer/conda.svg
:target: https://anaconda.org/underchemist/nanonispy/badges/installer/conda.svg
Raw data
{
"_id": null,
"home_page": "https://github.com/ceds92/nanonispy2",
"name": "nanonispy2",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": null,
"keywords": "science numpy parse library",
"author": "Julian Ceddia",
"author_email": "jdceddia@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/6a/41/4388fef72035a2a1c9f67bdbb76a833c13d265548d7138d861bb32f86e15/nanonispy2-1.2.0.tar.gz",
"platform": "any",
"description": "|Build Status| |Coverage Status| |Install with conda|\r\n\r\nnanonispy\r\n=========\r\n\r\nA small library written in python 3 to parse Nanonis binary and ascii\r\nfiles.\r\n\r\nNanonispy was made in needing to do a lot of analysis for scanning tunneling microscopy (STM) data, and thought this would be good practice in creating a proper python library. That being said it is in no way foolproof and if anybody else actually uses this please let me know if you run into issues.\r\n\r\nNanonispy can read Nanonis grid, scan, and point spectroscopy files. This means it will read the file header and parse that into a somewhat useful dictionary for later use, as well as read in the binary/ascii data in a relatively general way to accomadate data with multiple channels stored, or custom spectroscopy experiments.\r\n\r\nRequirements\r\n------------\r\n\r\nCurrently written and tested with\r\n\r\n- python 3.9\r\n- python 3.8\r\n- python 3.7\r\n- python 3.6\r\n\r\n\r\nDepends on\r\n\r\n- numpy\r\n\r\n\r\nInstall\r\n-------\r\nFor the most up-to-date version, install from github as pip and conda packages are not updated as frequently.\r\n\r\npip\r\n~~~\r\n\r\n::\r\n\r\n pip install nanonispy\r\n\r\nconda\r\n~~~~~\r\n\r\n::\r\n\r\n conda install --channel https://conda.anaconda.org/underchemist nanonispy\r\n\r\ngithub\r\n~~~~~~\r\n\r\nSimply clone this repo and run\r\n\r\n::\r\n\r\n python setup.py install\r\n\r\nBasic usage\r\n-----------\r\n\r\nOnce installed, you should be able to import it to any python script or ipython session.\r\n\r\n.. code:: python\r\n\r\n import nanonispy as nap\r\n\r\nThen given a file,\r\n\r\n.. code:: python\r\n\r\n grid = nap.read.Grid('/path/to/datafile.3ds')\r\n\r\nYou can look at the attributes and methods to determine the information\r\navailable.\r\n\r\nRunning tests\r\n-------------\r\n\r\nSimilar to the install, except run\r\n\r\n::\r\n\r\n python setup.py test\r\n\r\n. If you have the nose module installed, it's as simple as\r\n\r\n::\r\n\r\n nosetests\r\n\r\n.\r\n\r\nYou can also see coverage of the tests as well as ignore the test\r\ndiscovery of numpy core packages (don't quite understand why it does\r\nthis) with\r\n\r\n::\r\n\r\n nosetests --with-coverage --cover-branches --cover-package=nanonispy\r\n\r\n.\r\n\r\n\r\n.. |Build Status| image:: https://travis-ci.org/underchemist/nanonispy.svg?branch=master\r\n :target: https://travis-ci.org/underchemist/nanonispy\r\n.. |Coverage Status| image:: https://coveralls.io/repos/underchemist/nanonispy/badge.svg?branch=master&service=github\r\n :target: https://coveralls.io/github/underchemist/nanonispy?branch=master\r\n.. |Install with conda| image:: https://anaconda.org/underchemist/nanonispy/badges/installer/conda.svg\r\n :target: https://anaconda.org/underchemist/nanonispy/badges/installer/conda.svg\r\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Library to parse Nanonis files. Forked from https://github.com/underchemist/nanonispy",
"version": "1.2.0",
"project_urls": {
"Homepage": "https://github.com/ceds92/nanonispy2"
},
"split_keywords": [
"science",
"numpy",
"parse",
"library"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "8f68e86c8adfd1399a120ae8af48264a346cdc562778e958beb92ec15233408d",
"md5": "31eb5cacf1e33e49c060b46fc634dbc2",
"sha256": "9b19435cc0b80b787f452e5d235a881a1d3777fa3c648ef8b62e8ff43a40471c"
},
"downloads": -1,
"filename": "nanonispy2-1.2.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "31eb5cacf1e33e49c060b46fc634dbc2",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6",
"size": 10589,
"upload_time": "2024-03-28T20:27:29",
"upload_time_iso_8601": "2024-03-28T20:27:29.350820Z",
"url": "https://files.pythonhosted.org/packages/8f/68/e86c8adfd1399a120ae8af48264a346cdc562778e958beb92ec15233408d/nanonispy2-1.2.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "6a414388fef72035a2a1c9f67bdbb76a833c13d265548d7138d861bb32f86e15",
"md5": "5de25d5259b32ff93ae5f40af37901d7",
"sha256": "65ad304de2bac8691c567795275e386f16d2f269d20c8e8d44fad06f82411d9c"
},
"downloads": -1,
"filename": "nanonispy2-1.2.0.tar.gz",
"has_sig": false,
"md5_digest": "5de25d5259b32ff93ae5f40af37901d7",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 15815,
"upload_time": "2024-03-28T20:27:31",
"upload_time_iso_8601": "2024-03-28T20:27:31.337817Z",
"url": "https://files.pythonhosted.org/packages/6a/41/4388fef72035a2a1c9f67bdbb76a833c13d265548d7138d861bb32f86e15/nanonispy2-1.2.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-03-28 20:27:31",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "ceds92",
"github_project": "nanonispy2",
"travis_ci": true,
"coveralls": false,
"github_actions": false,
"requirements": [
{
"name": "numpy",
"specs": []
},
{
"name": "nose",
"specs": []
}
],
"tox": true,
"lcname": "nanonispy2"
}