PDF, a visualisation of your calculation, can have essentials of your code.
Project description
PyLog2PDF
PDF, a visualisation of your calculation, can have essentials of your code.
Features
This library provides:
- Log of Python classes and/or functions you employed.
- Interface to save the log to PDF file.
Installation
pip install pylog2pdf
Usage
Log your classes and/or functions
>>> from pylog2pdf import LoggedClass, LoggedFunction
# Define your class or function with decorator
>>> @LoggedClass
... class MyNewClass:
... pass
>>> @LoggedFunction
... def my_new_function():
... pass
# Or using them as normal functions
>>> OtherLoggedClass = LoggedClass(OtherClass)
>>> other_logged_function = LoggedFunction(other_function)
I strongly recommend the use of class inheritance like the following. It's quite useful when determining which parameter is employed in calculation.
@LoggedClass
class Sun:
distance: u.Quantity
radius: u.Quantity
def some_calculation(self, ...):
pass
def other_calculation(self, ...):
pass
class ThisThesis(Sun):
distance = 1.5e8 << u.m
radius = 696e3 << u.km
class OtherThesis(Sun):
distance = 1 << u.AU
radius = 695e3 << u.km
When you use ThisThesis class, the log will be:
>>> pylog2pdf.LOG
{'Sun': 'ThisThesis'}
Of cource you can manually add anything you want to save:
>>> pylog2pdf["ThisParameter"] = 100 << u.K
Save the log to PDF file
Write the log to pdf file:
>>> pdf_path = "path/to/figure.pdf"
>>> fig.savefig(pdf_path) # Create a pdf file first
>>> pylog2pdf.write_log(pdf_path)
Then you can read the log:
>>> pdf_path = "path/to/pdf/you/saved.pdf"
>>> pylog2pdf.read_log(pdf_path)
{'Sun': 'ThisThesis'}
This library is using Semantic Versioning.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pylog2pdf-0.1.0.tar.gz.
File metadata
- Download URL: pylog2pdf-0.1.0.tar.gz
- Upload date:
- Size: 4.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.11 CPython/3.8.12 Linux/5.8.0-1042-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c26e87b1f2efd6a14c30138ca157a79ea4c113bd6b003a17008c917ed4e32e0e
|
|
| MD5 |
0cf4e0c83384be404ccb0087d28c2b4a
|
|
| BLAKE2b-256 |
168869a11d4ef55f9c1f73680ae23116024d082dbe417cede5fe62e3e6ddbf28
|
File details
Details for the file pylog2pdf-0.1.0-py3-none-any.whl.
File metadata
- Download URL: pylog2pdf-0.1.0-py3-none-any.whl
- Upload date:
- Size: 4.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.1.11 CPython/3.8.12 Linux/5.8.0-1042-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a67a9698ed1328a8d383b6d1cbe531a89723792e38bae0e8b8398563134a7a0f
|
|
| MD5 |
854f730dec1da59f71fd16d55efb6edf
|
|
| BLAKE2b-256 |
25e15dfa51cf8c5580f670c3c3855dea4dbe807200833c2350559078c1f35ee4
|