{ "info": { "author": "Ray Buhr", "author_email": "raymond.buhr@gmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy" ], "description": "\n\n# pyplot-themes\nThemes you can see that apply to matplotlib, seaborn, and pandas plots.\n\nThis package was inspired by the [`ggthemes` package in R](https://jrnold.github.io/ggthemes/), \nand the code influenced from the [`seaborn` package in python](https://seaborn.pydata.org/) (specifically `rcmod.py`).\n\n## Installing\n\nInstall from PyPI\n\n```\npip install pyplot-themes\n```\n\nOr directly from GitHub\n\n```\npip install git+https://github.com/raybuhr/pyplot-themes.git\n```\n\n## Usage\n\n### Environment \n\n\n```python\nimport sys\nsys.version\n```\n\n\n\n\n '3.7.1 (default, Dec 14 2018, 19:28:38) \\n[GCC 7.3.0]'\n\n\n\n\n```python\nimport matplotlib.pyplot as plt\nfrom seaborn import palplot # only used to show off palettes \n\nfrom string import ascii_uppercase\nimport numpy as np\n\n\ndef example_scatter_plot(num_cats=6):\n for i in range(num_cats):\n cat = ascii_uppercase[i]\n x = np.random.random(100)\n y = np.random.random(100) + i\n plt.scatter(x, y, marker='o', label=cat)\n plt.legend(loc='best')\n\n\ndef example_bar_plot(num_cats=6):\n bar_width = 1 / num_cats + 1\n for i in range(num_cats):\n cat = ascii_uppercase[i]\n x = np.arange(11) + 5 * i\n y = np.array([0, 1, 2, 3, 4, 5, 4, 3, 2, 1, 0]) + np.random.random(1)\n plt.bar(x, y, label=cat, width=bar_width)\n plt.legend(loc='best')\n\n\ndef example_plots(num_cats=6):\n example_scatter_plot(num_cats)\n plt.show()\n example_bar_plot(num_cats)\n plt.show()\n```\n\n## Default Maplotlib Theme\n\n\n```python\nexample_plots()\n```\n\n\n![png](examples_files/examples_4_0.png)\n\n\n\n![png](examples_files/examples_4_1.png)\n\n\nAs you can see, the default theme has good contrast in colors, but leaves a bit to be desired in the sige of the chart (i.e. figure size aka figsize) and font. \n\n## Usage\n\n\n```python\nimport pyplot_themes as themes\nthemes.__version__\n```\n\n\n\n\n '0.2.0'\n\n\n\n\n```python\nthemes.theme_minimal()\n```\n\nThis updates the global theme settings for matplotlib with a nice minimal style using colorblind safe colors.\n\n\n```python\npalplot(themes.palettes.Colorblind.colors)\n```\n\n\n![png](examples_files/examples_10_0.png)\n\n\n\n```python\nexample_plots()\n```\n\n\n![png](examples_files/examples_11_0.png)\n\n\n\n![png](examples_files/examples_11_1.png)\n\n\nAs you can see, our plots are much larger now, have accessible colors, and have some light gridlines to make identifying values a bit easier.\n\nThere are a few parameters available in all themes:\n- grid: toggles grid lines on/off\n- ticks: toggles tick marks on/off\n- figsize: sets the default size of plots (you can still change each plot in an ad hoc manner if needed)\n- fontsize: sets the default font size to be used\n\nSome themes will allow you to pass in whatever colors you want, others you have to pick a color scheme from available options, some only let you reverse the order of the default color palette, and some don't let you mess with the colors at all. Experiment and find out what you like.\n\n\n```python\nthemes.theme_minimal(grid=False, ticks=False, fontsize=18)\nexample_scatter_plot()\nplt.title(\"Look Mom, no lines!\")\n```\n\n\n\n\n Text(0.5, 1.0, 'Look Mom, no lines!')\n\n\n\n\n![png](examples_files/examples_14_1.png)\n\n\n### Themes\n\n\n```python\nthemes.theme_dark()\nexample_plots()\n```\n\n\n![png](examples_files/examples_16_0.png)\n\n\n\n![png](examples_files/examples_16_1.png)\n\n\n\n```python\nthemes.theme_tableau()\nexample_plots()\n```\n\n\n![png](examples_files/examples_17_0.png)\n\n\n\n![png](examples_files/examples_17_1.png)\n\n\n\n```python\npalplot(themes.palettes.Solarized.dark)\n```\n\n\n![png](examples_files/examples_18_0.png)\n\n\n\n```python\nthemes.theme_solarized(scheme=\"dark\")\nexample_plots()\n```\n\n\n![png](examples_files/examples_19_0.png)\n\n\n\n![png](examples_files/examples_19_1.png)\n\n\n\n```python\npalplot(themes.palettes.Solarized.light)\n```\n\n\n![png](examples_files/examples_20_0.png)\n\n\n\n```python\nthemes.theme_solarized(scheme=\"light\")\nexample_plots()\n```\n\n\n![png](examples_files/examples_21_0.png)\n\n\n\n![png](examples_files/examples_21_1.png)\n\n\n\n```python\npalplot(themes.palettes.PaulTolColorSchemes.colors)\n```\n\n\n![png](examples_files/examples_22_0.png)\n\n\n\n```python\nthemes.theme_paul_tol()\nexample_plots(12)\n```\n\n\n![png](examples_files/examples_23_0.png)\n\n\n\n![png](examples_files/examples_23_1.png)\n\n\n\n```python\nthemes.theme_paul_tol(reverse_colors=True, grid=False)\nexample_plots(num_cats=12)\n```\n\n\n![png](examples_files/examples_24_0.png)\n\n\n\n![png](examples_files/examples_24_1.png)\n\n\n\n```python\npalplot(themes.palettes.Few.light)\npalplot(themes.palettes.Few.medium)\npalplot(themes.palettes.Few.dark)\n```\n\n\n![png](examples_files/examples_25_0.png)\n\n\n\n![png](examples_files/examples_25_1.png)\n\n\n\n![png](examples_files/examples_25_2.png)\n\n\n\n```python\nthemes.theme_few(scheme=\"light\")\nexample_plots()\n```\n\n\n![png](examples_files/examples_26_0.png)\n\n\n\n![png](examples_files/examples_26_1.png)\n\n\n\n```python\nthemes.theme_few(scheme=\"medium\", figsize=[5, 5])\nexample_scatter_plot()\n```\n\n\n![png](examples_files/examples_27_0.png)\n\n\n\n```python\nthemes.theme_few(scheme=\"dark\")\nexample_bar_plot()\n```\n\n\n![png](examples_files/examples_28_0.png)\n\n\n\n```python\nthemes.theme_ucberkeley(figsize=[10, 5])\nexample_plots(num_cats=4)\n```\n\n\n![png](examples_files/examples_29_0.png)\n\n\n\n![png](examples_files/examples_29_1.png)\n\n\n\n```python\nthemes.theme_ucberkeley(scheme=\"all\", figsize=[12, 6])\nexample_plots(num_cats=16)\n```\n\n\n![png](examples_files/examples_30_0.png)\n\n\n\n![png](examples_files/examples_30_1.png)\n\n\n### Themes that come with matplotlib\n\nThese next themes actually come with matplotlib and you can use them without the `pyplot-themes` package.\nThe functions here are basically thin wrappers for calling the matplotlib defined styles, but use a bigger figsize by default.\n\n\n```python\nthemes.theme_fivethirtyeight()\nexample_plots()\n```\n\n\n![png](examples_files/examples_32_0.png)\n\n\n\n![png](examples_files/examples_32_1.png)\n\n\n\n```python\nthemes.theme_ggplot2(figsize=[10, 5])\nexample_plots()\n```\n\n\n![png](examples_files/examples_33_0.png)\n\n\n\n![png](examples_files/examples_33_1.png)\n\n\n`bmh` stands for Bayesian Methods for Hackers\n\n\n```python\nthemes.theme_bmh()\nexample_scatter_plot()\n```\n\n\n![png](examples_files/examples_35_0.png)\n\n\nSo we also have an alias for the spelled out version to make it easier to discover\n\n\n```python\nthemes.theme_bayesian_methods_for_hackers()\nexample_bar_plot()\n```\n\n\n![png](examples_files/examples_37_0.png)\n\n\nWhile this package provides light and dark solarized themes, `matplotlib` comes with a light version as well. This one is a good choice if you want to keep more contrast in the colors of your plots.\n\n\n```python\nthemes.theme_solarized_light2()\nexample_plots()\n```\n\n\n![png](examples_files/examples_39_0.png)\n\n\n\n![png](examples_files/examples_39_1.png)\n\n\n### Modifying Themes\n\nIn addition to making it easy to find and call the matplotlib themes, `pyplot-themes` also makes it easier to modify them slightly. For example say you want to use the `ggplot2` theme, but you want to use the Paul Tol Color Schemes palette with it.\n\n\n```python\nthemes.theme_ggplot2(palette=themes.palettes.PaulTolColorSchemes.colors, figsize=[12, 6])\nexample_bar_plot(num_cats=12)\n```\n\n\n![png](examples_files/examples_41_0.png)\n\n\nOr maybe the `fivethirtyeight` colors\n\n\n```python\nthemes.theme_ggplot2(palette=themes.palettes.FiveThirtyEight.colors)\nexample_bar_plot()\n```\n\n\n![png](examples_files/examples_43_0.png)\n\n\n### Resetting to back to matplotlib defaults\n\nOf course, sometimes when you are trying out different themes, you may find you modified a setting that you didn't quite like, but aren't sure what changed. To aid in debugging, we created a function to reset the theme back to what matplotlib starts with. Of course, you may just like the matplotlib defaults and that's ok.\n\nNote: The default settings for matplotlib can be slightly different depending on if you are using in python files (e.g. scripts) vs. in jupyter notebooks using `%matplotlib inline`. The reset function assumes you are using a notebook by default, but provides a parameter to toggle that off if you are not:\n\n```python\nthemes.theme_reset(notebook=False)\n```\n\n\n```python\nthemes.theme_reset() # could also use the alias `themes.theme_matplotlib_default()`\nexample_bar_plot()\n```\n\n\n![png](examples_files/examples_45_0.png)\n\n\n### Palettes\n\nIn addition to the themes above, there are a bunch of color palettes provided. Here are a few to show off.\n\n\n```python\npalplot(themes.palettes.Autumn1.colors)\n```\n\n\n![png](examples_files/examples_47_0.png)\n\n\n\n```python\npalplot(themes.palettes.Autumn2.colors)\n```\n\n\n![png](examples_files/examples_48_0.png)\n\n\n\n```python\npalplot(themes.palettes.Canyon.colors)\n```\n\n\n![png](examples_files/examples_49_0.png)\n\n\n\n```python\npalplot(themes.palettes.Chili.colors)\n```\n\n\n![png](examples_files/examples_50_0.png)\n\n\n\n```python\npalplot(themes.palettes.Tomato.colors)\n```\n\n\n![png](examples_files/examples_51_0.png)\n\n\n\n```python\npalplot(themes.palettes.Few.medium)\n```\n\n\n![png](examples_files/examples_52_0.png)\n\n\n\n```python\npalplot(themes.palettes.FiveThirtyEight.colors)\n```\n\n\n![png](examples_files/examples_53_0.png)\n\n\n\n```python\npalplot(themes.palettes.Solarized.light)\npalplot(themes.palettes.Solarized.dark)\n```\n\n\n![png](examples_files/examples_54_0.png)\n\n\n\n![png](examples_files/examples_54_1.png)\n\n\n\n```python\npalplot(themes.palettes.UCBerkeley.primary_colors)\npalplot(themes.palettes.UCBerkeley.secondary_colors)\n```\n\n\n![png](examples_files/examples_55_0.png)\n\n\n\n![png](examples_files/examples_55_1.png)\n\n\n### Sequential Palettes\n\n\n```python\npalplot(themes.palettes.Sequential.blues)\npalplot(themes.palettes.Sequential.cyans)\npalplot(themes.palettes.Sequential.purples)\n```\n\n\n![png](examples_files/examples_57_0.png)\n\n\n\n![png](examples_files/examples_57_1.png)\n\n\n\n![png](examples_files/examples_57_2.png)\n\n\n\n```python\npalplot(themes.palettes.Sequential.greens)\npalplot(themes.palettes.Sequential.oranges)\npalplot(themes.palettes.Sequential.reds)\n```\n\n\n![png](examples_files/examples_58_0.png)\n\n\n\n![png](examples_files/examples_58_1.png)\n\n\n\n![png](examples_files/examples_58_2.png)\n\n\n### Diverging Palettes\n\n\n```python\npalplot(themes.palettes.Diverging.blueorange)\npalplot(themes.palettes.Diverging.orangeblue)\n```\n\n\n![png](examples_files/examples_60_0.png)\n\n\n\n![png](examples_files/examples_60_1.png)\n\n\n\n```python\npalplot(themes.palettes.Diverging.bluepurple)\npalplot(themes.palettes.Diverging.purpleblue)\n```\n\n\n![png](examples_files/examples_61_0.png)\n\n\n\n![png](examples_files/examples_61_1.png)\n\n\n\n```python\npalplot(themes.palettes.Diverging.bluered)\npalplot(themes.palettes.Diverging.redblue)\n```\n\n\n![png](examples_files/examples_62_0.png)\n\n\n\n![png](examples_files/examples_62_1.png)\n\n\n\n```python\npalplot(themes.palettes.Diverging.greenpurple)\npalplot(themes.palettes.Diverging.purplegreen)\n```\n\n\n![png](examples_files/examples_63_0.png)\n\n\n\n![png](examples_files/examples_63_1.png)\n\n\n\n```python\npalplot(themes.palettes.Diverging.greenred)\npalplot(themes.palettes.Diverging.redgreen)\n```\n\n\n![png](examples_files/examples_64_0.png)\n\n\n\n![png](examples_files/examples_64_1.png)\n\n\n### Using with Pandas\n\n\n```python\nimport pandas as pd\n```\n\n\n```python\n# some made up date\nsales = np.random.randint(low=10, high=20, size=30) * [i**2 for i in range(1, 31)]\nrevenue = np.random.random(30) * sales\nmonths = pd.date_range(start=\"2010-01-01\", periods=30, freq=\"M\")\n\ndf = pd.DataFrame({\"sales\": sales, \"revenue\": revenue.round(2)}, index=months)\n```\n\n\n```python\ndf.head()\n```\n\n\n\n\n
\n\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
salesrevenue
2010-01-31122.76
2010-02-285245.05
2010-03-319011.80
2010-04-30208203.93
2010-05-31475337.08
\n
\n\n\n\n\n```python\nthemes.theme_minimal()\ndf.plot()\n```\n\n\n\n\n \n\n\n\n\n![png](examples_files/examples_69_1.png)\n\n\n\n```python\nthemes.theme_dark(palette=themes.palettes.Autumn1.colors)\ndf.plot()\n```\n\n\n\n\n \n\n\n\n\n![png](examples_files/examples_70_1.png)\n\n\n## Contributing\n\nThere are multiple ways you can help out with this project:\n\n- submit a bug report\n- submit a feature request\n- Fork this git repo, change some code, and submit a Pull Request\n - adding documentation or examples counts as changing code\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/raybuhr/pyplot-themes", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "pyplot-themes", "package_url": "https://pypi.org/project/pyplot-themes/", "platform": "", "project_url": "https://pypi.org/project/pyplot-themes/", "project_urls": { "Homepage": "https://github.com/raybuhr/pyplot-themes" }, "release_url": "https://pypi.org/project/pyplot-themes/0.2.2/", "requires_dist": [ "matplotlib" ], "requires_python": ">=3.6.0", "summary": "Easily set themes that automatically apply to matplotlib, seaborn, and pandas plots", "version": "0.2.2", "yanked": false, "yanked_reason": null }, "last_serial": 6050999, "releases": { "0.1.1": [ { "comment_text": "", "digests": { "md5": "aa8f5afc75511c070c4fc8ce712ea481", "sha256": "91150cb91218028383f49891937553fe65924763649ce3937f869fb566497926" }, "downloads": -1, "filename": "pyplot_themes-0.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "aa8f5afc75511c070c4fc8ce712ea481", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=3.6.0", "size": 8158, "upload_time": "2019-09-30T00:14:24", "upload_time_iso_8601": "2019-09-30T00:14:24.379044Z", "url": "https://files.pythonhosted.org/packages/5b/e3/5f237860dd3757718244754b6d5a7e893abefe6ce0deefe918be0a292220/pyplot_themes-0.1.1-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "e893a39f71e43576d3c708d0988b0378", "sha256": "026253697e1c3056fb1b43d3658b5fcdd4b383328167d00287c193e1385419ab" }, "downloads": -1, "filename": "pyplot-themes-0.1.1.tar.gz", "has_sig": false, "md5_digest": "e893a39f71e43576d3c708d0988b0378", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.0", "size": 10129, "upload_time": "2019-09-30T00:14:26", "upload_time_iso_8601": "2019-09-30T00:14:26.602868Z", "url": "https://files.pythonhosted.org/packages/c6/8a/f3c88448580541da0c5ead6103960e104d926e8af2b292223e16e9ced3e1/pyplot-themes-0.1.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "6e9dcbe687c5aec3bed5226a42389c9b", "sha256": "1da33d2999b5d0487534995a50ccfd9d94e84b5a900ca2e6ac46a639c52d486e" }, "downloads": -1, "filename": "pyplot_themes-0.1.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "6e9dcbe687c5aec3bed5226a42389c9b", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=3.6.0", "size": 11232, "upload_time": "2019-09-30T00:50:59", "upload_time_iso_8601": "2019-09-30T00:50:59.554779Z", "url": "https://files.pythonhosted.org/packages/e2/5d/9c9d0a89fe0659882865a0822117d1829d0fb3857e8e25877ab8545a88ea/pyplot_themes-0.1.2-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "35bdace82221da3f5d672522dcd37307", "sha256": "0bfe6073c4d0df8ae3774ed9a0895c1856a215508505893bd8e92e431d4b2694" }, "downloads": -1, "filename": "pyplot-themes-0.1.2.tar.gz", "has_sig": false, "md5_digest": "35bdace82221da3f5d672522dcd37307", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.0", "size": 15291, "upload_time": "2019-09-30T00:51:00", "upload_time_iso_8601": "2019-09-30T00:51:00.966835Z", "url": "https://files.pythonhosted.org/packages/c7/64/1c01ccfb41d38e97dbe4e93ac3ff047720206f7f314e5a02e1602f4d776c/pyplot-themes-0.1.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "ea8353913718ab1f353b9dfae903b5ad", "sha256": "e8cf93d901648477224cb2274acad3876fcc4775cec543f273b40d21f877023a" }, "downloads": -1, "filename": "pyplot_themes-0.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "ea8353913718ab1f353b9dfae903b5ad", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=3.6.0", "size": 5522, "upload_time": "2019-10-30T03:46:23", "upload_time_iso_8601": "2019-10-30T03:46:23.594923Z", "url": "https://files.pythonhosted.org/packages/d9/c4/666f41c8d6ee6fc8b5578ea555289176a2f8b88c5067ad7a552e70a99141/pyplot_themes-0.2.0-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "d8fc4592b0656799eb321eb14de99651", "sha256": "707dcb43a0430113e0602ec3f171de0339485bd5003f2361ca05101f7cae5dc4" }, "downloads": -1, "filename": "pyplot-themes-0.2.0.tar.gz", "has_sig": false, "md5_digest": "d8fc4592b0656799eb321eb14de99651", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.0", "size": 9305, "upload_time": "2019-10-30T03:46:25", "upload_time_iso_8601": "2019-10-30T03:46:25.362036Z", "url": "https://files.pythonhosted.org/packages/c1/6c/3be9adfb1e4c2293a535a4499d40ef5fdc0e26f5773f9e95a62c85e18da1/pyplot-themes-0.2.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "3d08d976acf110e3c88db2d43ec22aa4", "sha256": "4de073ca1347f415c188711c7a18c782b03f9d51580f541458abeb2beb89d716" }, "downloads": -1, "filename": "pyplot_themes-0.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "3d08d976acf110e3c88db2d43ec22aa4", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=3.6.0", "size": 5523, "upload_time": "2019-10-30T06:14:36", "upload_time_iso_8601": "2019-10-30T06:14:36.403251Z", "url": "https://files.pythonhosted.org/packages/c8/91/777b83cd7f5e8a972df7c2e97d1fda31aa2566cc830aced391e233ac52df/pyplot_themes-0.2.1-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "bbe09d819e2a86d0ed0db4e886f3d35f", "sha256": "ffb9ccd2e9aa8080601ac1bd4681d6301e7f1e6d0337a38d64ccd0cf8113978e" }, "downloads": -1, "filename": "pyplot-themes-0.2.1.tar.gz", "has_sig": false, "md5_digest": "bbe09d819e2a86d0ed0db4e886f3d35f", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.0", "size": 9304, "upload_time": "2019-10-30T06:14:38", "upload_time_iso_8601": "2019-10-30T06:14:38.129652Z", "url": "https://files.pythonhosted.org/packages/3f/04/b39c31df95a59c76fafee632d2b021046007cf080aad022ea8451052b3f6/pyplot-themes-0.2.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "bc273cb8117c29e90867dde1a9d40bc1", "sha256": "c7a819c345410e13bb108d73746d8b3778e32513cdc31b2d5c83428b42bc76cc" }, "downloads": -1, "filename": "pyplot_themes-0.2.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "bc273cb8117c29e90867dde1a9d40bc1", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=3.6.0", "size": 12093, "upload_time": "2019-10-30T06:54:58", "upload_time_iso_8601": "2019-10-30T06:54:58.459424Z", "url": "https://files.pythonhosted.org/packages/f7/e1/192d14c94aff4a16c5e688a690a1939e0f258e3d51910c3a4dc75837cf53/pyplot_themes-0.2.2-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "29868d589f31831d386171f580aae2bf", "sha256": "a53898095b2670ad941a3c075a1389c92ed81743c2a50a829d3f5f7b30d9ded4" }, "downloads": -1, "filename": "pyplot-themes-0.2.2.tar.gz", "has_sig": false, "md5_digest": "29868d589f31831d386171f580aae2bf", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.0", "size": 16516, "upload_time": "2019-10-30T06:55:00", "upload_time_iso_8601": "2019-10-30T06:55:00.208088Z", "url": "https://files.pythonhosted.org/packages/73/1b/eac988c27d42808f38430525788a63ad21d67826aca6015ab11fc80841f0/pyplot-themes-0.2.2.tar.gz", "yanked": false, "yanked_reason": null } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "bc273cb8117c29e90867dde1a9d40bc1", "sha256": "c7a819c345410e13bb108d73746d8b3778e32513cdc31b2d5c83428b42bc76cc" }, "downloads": -1, "filename": "pyplot_themes-0.2.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "bc273cb8117c29e90867dde1a9d40bc1", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": ">=3.6.0", "size": 12093, "upload_time": "2019-10-30T06:54:58", "upload_time_iso_8601": "2019-10-30T06:54:58.459424Z", "url": "https://files.pythonhosted.org/packages/f7/e1/192d14c94aff4a16c5e688a690a1939e0f258e3d51910c3a4dc75837cf53/pyplot_themes-0.2.2-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "29868d589f31831d386171f580aae2bf", "sha256": "a53898095b2670ad941a3c075a1389c92ed81743c2a50a829d3f5f7b30d9ded4" }, "downloads": -1, "filename": "pyplot-themes-0.2.2.tar.gz", "has_sig": false, "md5_digest": "29868d589f31831d386171f580aae2bf", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.0", "size": 16516, "upload_time": "2019-10-30T06:55:00", "upload_time_iso_8601": "2019-10-30T06:55:00.208088Z", "url": "https://files.pythonhosted.org/packages/73/1b/eac988c27d42808f38430525788a63ad21d67826aca6015ab11fc80841f0/pyplot-themes-0.2.2.tar.gz", "yanked": false, "yanked_reason": null } ], "vulnerabilities": [] }