{"id":23701379,"url":"https://github.com/zoziha/easy_plplot","last_synced_at":"2026-01-26T02:31:46.611Z","repository":{"id":108041346,"uuid":"430305517","full_name":"zoziha/easy_plplot","owner":"zoziha","description":"Matplotlib personality wrapper for PlPlot in Fortran","archived":false,"fork":false,"pushed_at":"2022-05-20T14:45:26.000Z","size":328,"stargazers_count":8,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-22T21:16:20.383Z","etag":null,"topics":["fortran","fortran-library","fortran-package-manager","fpm","matplotlib","plot","plotting","plplot","plplot-bindings"],"latest_commit_sha":null,"homepage":"https://easy-plplot-api.netlify.app/","language":"Fortran","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zoziha.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}},"created_at":"2021-11-21T07:53:39.000Z","updated_at":"2025-05-16T03:29:20.000Z","dependencies_parsed_at":"2023-09-25T02:07:42.865Z","dependency_job_id":null,"html_url":"https://github.com/zoziha/easy_plplot","commit_stats":{"total_commits":7,"total_committers":1,"mean_commits":7.0,"dds":0.0,"last_synced_commit":"77b0ac9b30d732196e99438064c35f4c1914eb7c"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/zoziha/easy_plplot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zoziha%2Feasy_plplot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zoziha%2Feasy_plplot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zoziha%2Feasy_plplot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zoziha%2Feasy_plplot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zoziha","download_url":"https://codeload.github.com/zoziha/easy_plplot/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zoziha%2Feasy_plplot/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28765037,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-26T02:25:41.078Z","status":"ssl_error","status_checked_at":"2026-01-26T02:24:28.809Z","response_time":59,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: 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":["fortran","fortran-library","fortran-package-manager","fpm","matplotlib","plot","plotting","plplot","plplot-bindings"],"created_at":"2024-12-30T09:37:13.971Z","updated_at":"2026-01-26T02:31:46.595Z","avatar_url":"https://github.com/zoziha.png","language":"Fortran","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Easy Plplot\n\n[![Netlify Status](https://api.netlify.com/api/v1/badges/a6d36a1c-03a6-4a41-b069-4fd65e3c7673/deploy-status)](https://app.netlify.com/sites/easy-plplot-api/deploys)\n\n`easy_plplot` is a wrapper for PlPlot inspired by the interface of \n`matplotlib`. It is intended to fill the need for rapid feedback while \ndeveloping numerical simulations, and does not replace more \nsophisticated packages such as matplotlib or even direct use of PlPlot.\n\nWhile it is possible that the output from `easy_plplot` may be considered \nas publication quality, no assertion is made along those lines. This \nsoftware has been written in the hope that it will be useful, \nespecially for students in numerical analysis courses based on Fortran.\n\nDocumentation can be found [here](https://easy-plplot-api.netlify.app/).\n\n## Getting Started\n\n### Supported Compilers\n\nThe following combinations are supported:\n\n|Name|Vesrion|Platform|Architecture|  \n|:-:|:-:|:-:|:-:|  \n|GCC Fortran(MSYS2)|11|Windows 10|x86_64|\n\n### Dependencies\n\n- [Plplot 5.15.0](https://sourceforge.net/projects/plplot/files/plplot/5.15.0%20Source/)\n- libgd 2.3.2\n- [Fortran-lang/fpm](https://github.com/fortran-lang/fpm) 0.5.0\n\nPS: It seems that the `plplot-fortran` of the `debian` and `ubuntu` distribution warehouses does not take into account the `*.mod` files, so it is best to use `cmake` to install plplot by yourself.\n\n#### Build Environment in MSYS2\n\n```sh\npacman -S \u003carch\u003e64/mingw-w64-\u003carch\u003e-x86_64-plplot\npacman -S \u003carch\u003e64/mingw-w64-\u003carch\u003e-x86_64-libgd\n```\n\n### Build with [Fortran-lang/fpm](https://github.com/fortran-lang/fpm)\n\nFortran Package Manager (fpm) is a package manager and build system for Fortran.\u003cbr\u003e\nYou can build `easy_plplot` using provided `fpm.toml`:\n\n```sh\nexport FPM_FFLAGS=\"-Ipath/to/plplot/include\"\nfpm run --example --all\n```\n\nTo use `easy_plplot` within your `fpm` project, add the following lines to your `fpm.toml` file:\n\n```toml\n[dependencies]\neasy_plplot = { git=\"https://github.com/zoziha/easy_plplot\" }\n```\n\n### Usage\n\nSee [more usage](https://easy-plplot-api.netlify.app/page/index.html)🎯.\n\n```fortran\n!\u003e Create the project logo\nprogram logo_prg\n    use utilities_m\n    use easy_plplot_m\n    implicit none\n    real(wp), parameter :: pi = acos(-1.0d0)\n\n    call setup(device='svg', fileName='build/logo-%n.svg', figSize=[600, 500])\n    call makeLogo\n    call show()\n\ncontains\n\n    subroutine makeLogo\n        real(wp), dimension(:), allocatable :: x, y1, y2, y3\n\n        x = linspace(0.0_wp, 1.0_wp, 100)\n        y1 = x**2 - 1.0_wp\n        y2 = 2.0_wp*x - 1.0_wp\n        y3 = x\n        y3 = cos(2.0_wp*PI*x)\n\n        call figure()\n        call subplot(1, 1, 1)\n        call xylim(mixval(x), mixval([y1, y2, y3])*1.1_wp)\n\n        call plot(x, y1, lineColor='b', lineWidth=1.2_wp)\n        call plot(x, y2, lineColor='r', lineWidth=1.2_wp)\n        call plot(x, y3, lineColor='c', lineWidth=1.2_wp)\n\n        call ticks(lineWidth=1.2_wp)\n        call labels('', '', '')\n    end subroutine makeLogo\n\nend program logo_prg\n```\n\n\u003cdiv align=\"center\"\u003e\n\u003cimg src=\"media/logo-1.svg\" alt=\"easy_plplot\" width=\"600\"\u003e\n\u003c/div\u003e\n\n## Links\n\n- [PlPlot](http://PlPlot.sourceforge.net/)\n- [hornekyle/plplotlib](https://github.com/hornekyle/plplotlib) \n\nThanks to `PlPlot` written by Alan W. Irwin and other contributors.\u003cbr\u003e\nThanks to the Fortran interface of `PlPlot` written by Arjen Markus.\u003cbr\u003e\nThanks to the `plplotlib` high-level interfaces written by Dr Kyle Horne.\n\nThanks for your all contributions. Salute!\n\n### Other Plot-related Fortran Projects\n\n- [jacobwilliams/pyplot-fortran](https://github.com/jacobwilliams/pyplot-fortran)\n- [kookma/ogpf](https://github.com/kookma/ogpf)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzoziha%2Feasy_plplot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzoziha%2Feasy_plplot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzoziha%2Feasy_plplot/lists"}