{"id":14989273,"url":"https://github.com/nomad-vagabond/splinecloud-scipy","last_synced_at":"2026-02-03T19:03:20.505Z","repository":{"id":112982786,"uuid":"426441947","full_name":"nomad-vagabond/splinecloud-scipy","owner":"nomad-vagabond","description":"A Python client for SplineCloud API","archived":false,"fork":false,"pushed_at":"2025-12-03T13:15:06.000Z","size":585,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-12-06T17:18:40.811Z","etag":null,"topics":["approximation","b-splines","curve-fitting","interpolation","scipy","splines"],"latest_commit_sha":null,"homepage":"https://pypi.org/project/splinecloud-scipy","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nomad-vagabond.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2021-11-10T01:21:46.000Z","updated_at":"2025-12-03T13:15:09.000Z","dependencies_parsed_at":"2024-01-21T16:30:22.733Z","dependency_job_id":"18ab2fa9-a69a-4f12-8bbc-0550983b1c8d","html_url":"https://github.com/nomad-vagabond/splinecloud-scipy","commit_stats":null,"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"purl":"pkg:github/nomad-vagabond/splinecloud-scipy","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nomad-vagabond%2Fsplinecloud-scipy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nomad-vagabond%2Fsplinecloud-scipy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nomad-vagabond%2Fsplinecloud-scipy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nomad-vagabond%2Fsplinecloud-scipy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nomad-vagabond","download_url":"https://codeload.github.com/nomad-vagabond/splinecloud-scipy/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nomad-vagabond%2Fsplinecloud-scipy/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29054054,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-03T15:43:47.601Z","status":"ssl_error","status_checked_at":"2026-02-03T15:43:46.709Z","response_time":96,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["approximation","b-splines","curve-fitting","interpolation","scipy","splines"],"created_at":"2024-09-24T14:17:58.437Z","updated_at":"2026-02-03T19:03:20.487Z","avatar_url":"https://github.com/nomad-vagabond.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# splinecloud-scipy\n\nA Python client for [SplineCloud API](https://splinecloud.com/api/docs/)\n\nThe client library is based on [SciPy](https://scipy.org/) and allows to load data and curves from [SplineCloud](https://splinecloud.com/) into your code. Once loaded spline curves can be easily evaluated.\n\n## Installation\n\n```\npip install splinecloud-scipy\n```\n\n## Example of loading spline curve\n\n\u003cimg src=\"/docs/img/curve_api_link.png?raw=true\" width=80% alt=\"SplineCloud curve\"\u003e\n\n```python\nfrom splinecloud_scipy import load_spline\n\ncurve_id = 'spl_K5t56P5bormJ' # take curve ID from the 'API link' dropdown at SplineCloud\nspline = load_spline(curve_id)\n```\n\n## Evaluating spline curve for a range of x values\n\n```python\nimport numpy as np\nimport matplotlib.pyplot as plt\n\nX = np.linspace(0, 20, 100)\nY = [spline.eval(x) for x in X]\n\nplt.plot(X,Y)\nplt.grid()\nplt.show()\n```\n\n![Spline curve](/docs/img/curve.png?raw=true)\n\n## Load data fitted by spline and evaluate fit accuracy\n\n```python\ncolumns, table = spline.load_data()\nx_data, y_data = table.T\n\nplt.plot(X,Y)\nplt.plot(x_data, y_data, 'o', color=\"grey\")\nplt.grid()\nplt.xlabel(columns[0])\nplt.ylabel(columns[1])\nplt.show()\n```\n\n![Spline curve](/docs/img/curve_points.png?raw=true)\n\n```python\nRMSE = spline.fit_accuracy(table, method=\"RMSE\")\nprint(RMSE)\n\n0.011307453345329156\n```\n\n\n## Example of loading data in your code\n\n```python\nfrom splinecloud_scipy import load_subset\nsubset_id = 'sbt_nDO4XmmYqeGI' # subset id can be taken from the SplineCloud\ncolumns, table = load_subset(subset_id)\n```\n\n```\n\u003e\u003e\u003e columns\n\n['Throttle (%)',\n 'Load Currency (A)',\n 'Pull (g)',\n 'Power (W)',\n 'Efficiency (g/W)']\n```\n\n```\n\u003e\u003e\u003e table\n\narray([[5.0000e-01, 6.7600e+00, 3.8500e+02, 1.0871e+02, 3.5420e+00],\n       [6.0000e-01, 1.0200e+01, 4.9500e+02, 1.6249e+02, 3.0460e+00],\n       [7.0000e-01, 1.3580e+01, 6.0600e+02, 2.1768e+02, 2.7840e+00],\n       [8.0000e-01, 1.7390e+01, 6.8700e+02, 2.7140e+02, 2.5510e+00],\n       [9.0000e-01, 2.1030e+01, 7.4700e+02, 3.2813e+02, 2.2770e+00],\n       [1.0000e+00, 2.5060e+01, 8.0700e+02, 3.8555e+02, 2.0930e+00]])\n```\n\nThese examples are available as notebooks in the project's 'examples' folder.\n\n## Important\n\nThis library supports BSpline geometry but does not support weighted BSplines (NURBS). If you adjust the weights of the curve control points use another client, that supports NURBS (a link will be provided here soon).","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnomad-vagabond%2Fsplinecloud-scipy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnomad-vagabond%2Fsplinecloud-scipy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnomad-vagabond%2Fsplinecloud-scipy/lists"}