跳转到主要内容

检查Matplotlib绘图输出的功能

项目描述

DOI

MatPlotCheck

PyPI PyPI - Downloads Conda Conda

Build Status Build status codecov Documentation Status Code style: black

一个用于测试不同类型matplotlib绘图的包,包括

  • 基本的matplotlib绘图
  • geopandas空间矢量绘图
  • 栅格绘图
  • 时间序列绘图
  • folium绘图

等等!

为什么使用MatPlotCheck?

在教授数据科学课程时,常常需要测试绘图。在尝试编写测试时,Matplotlib API可能比较复杂。MatPlotCheck的开发是为了更容易地测试数据、标题、坐标轴和Matplotlib绘图的其它元素,以支持自动评分和其他测试需求。

MatPlotCheck受到了由Jess Hamrick开发的plotChecker的启发。

我们与她讨论了我们的开发,并决定将plotChecker扩展以适应我们课程中的一些评分需求,这些需求包括使用numpy进行图像和geopandas进行矢量数据的空间数据绘图。

安装MatPlotCheck

您可以使用pip或conda安装MatPlotCheck。要使用pip运行

pip install --upgrade matplotcheck

使用 conda: conda install -c conda-forge matplotcheck

将其导入 Python

import matplotcheck as mpc

开发中

Matplotcheck 目前处于重大开发阶段。

示例

2D 图,x 轴标签包含 "x",y 轴标签包含 "y" 和 "data"。

from matplotcheck.cases import PlotBasicSuite
import pandas as pd
import unittest

axis = plt.gca()
data = pd.DataFrame(data={x:xvals, y:yvals})
suite = PlotBasicSuite(ax=axis, data_exp=data, xcol=x, ycol=y)
xlabel_contains=[x], ylabel_contains = [y,data])
results = unittest.TextTestRunner().run(suite)

带有空间栅格数据的示例图

包含空间栅格图像和空间多边形矢量数据的图

from matplotcheck.cases import PlotRasterSuite
axis = plt.gca()
suite = PlotRasterSuite(ax=axis, im_expected=image, polygons=polygons)
results = unittest.TextTestRunner().run(suite)

如果您希望跳过 TestSuites 的分组,可以直接使用断言。

2D 图,x 轴标签包含 "x",y 轴标签包含 "y" 和 "data"。

from matplotcheck.base import PlotTester
import pandas as pd
axis = plt.gca()
pt = PlotTester(axis)
data = pd.DataFrame(data={x:xvals, y:yvals})
pt.assert_xydata(data, x, y)
pt.assert_xlabel_contains([x])
pt.assert_ylabel_contains([y, data])

包含空间栅格图像和空间多边形矢量数据的图

from matplotcheck.raster import RasterTester
from matplotcheck.vector import VectorTester
axis = plt.gca()
rt = RasterTester(axis)
vt = VectorTester(axis)
rt.assert_image(im_expected=image)
vt.assert_polygons(polygons_expected=polygons)

注意事项:此存储库可能遗漏了 matplotlib 绘图方式的各种边缘情况。请随时提交错误!

活跃贡献者

Leah Wasser Nathan Korinek

贡献者

我们欢迎任何形式的贡献。以下是 MatPlotCheck 的一些贡献者。

Ryan Larocque Kylen Solvik Kristen Curry

如何贡献

我们欢迎对 MatPlotCheck 的贡献!请确保查看我们的 贡献指南,了解更多关于提交拉取请求或更改 MatPlotCheck 的信息。

许可证 & 引用

BSD-3

引用信息

MatPlotCheck 的引用信息可在 zenodo 上找到。以下为 bibtext 格式链接

*bibtex

项目详情


下载文件

下载您平台上的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源分布

matplotcheck-0.1.4.tar.gz (32.4 kB 查看哈希值)

上传时间 源代码

构建分布

matplotcheck-0.1.4-py3-none-any.whl (32.5 kB 查看哈希值)

上传时间 Python 3

支持者: