bgli100 / c-pchart
将 "pChart" 库移植到 PHP 5+
Requires
- php: ^5.4|^7.0|8.0.*
- ext-gd: *
Requires (Dev)
- codeception/codeception: ^4.1.22
- codeception/module-asserts: ^1.3
- codeception/module-filesystem: ^1.0
- phpunit/phpunit: ^5.7|^9.5
- squizlabs/php_codesniffer: ^3.4
This package is auto-updated.
Last update: 2024-09-22 08:47:50 UTC
README
支持
本项目以基本方式支持,不会引入新功能。如果有需要,将审查并解决问题和拉取请求,所以请随时发布。
构建状态
关于
这个库是将 Jean-Damien Pogolotti 创建的出色 pChart 统计库移植到 PHP 5+,旨在允许在现代应用程序中使用它。这是通过将 PSR 标准应用于代码、引入命名空间和类型提示以及一些基本的方法注释来实现的。
这是 3.x 版本,它删除了工厂服务和稍微重新组织了文件结构。它不引入任何新功能,但更改与 2.x 分支不兼容。与原始库的 BC 兼容性主要保留,但是如果您不能承担这些风险,仍然可以使用 1.x 版本。
做了什么
-
支持 PHP 5.4 到 8.0 版本的版本。
-
完全移植了库的功能。我几乎未接触过实际的逻辑,因此原始库中的大多数代码应该可以正常工作。
-
定义并添加了所有类的命名空间。
-
将所有
exit()/die()命令替换为throw语句。 -
重构代码以符合 PSR-2 标准,并添加了注释(尽可能弄清楚它们),还添加了可能的方法类型提示,因此如果进行了某些奇怪的操作,可能会出现一些向后兼容性中断。
-
将所有常量移动到单个 文件 中。它将通过 Composer 自动加载,因此无需手动操作。
许可证
之前提到,此包使用的是 MIT 许可证,这不符合原始作者的设置要求。现在它属于 GNU GPL v3 许可证,因此如果您希望在商业项目中使用它,则需要支付 适当的费用。
贡献
总的来说,这是一个从 PHP 4 移植的旧库,因此代码既不美观也不容易理解。我已经尽最大努力使其现代化并添加了一些基本测试,但仍有很多工作要做。如果您愿意并有时间修复或改进任何内容,请随时发布 PR 或问题。
安装(通过 Composer)
对于 composer 安装,将以下内容添加到您的 composer.json 文件中并更新您的依赖项。或者您可以在项目根目录中运行
"require": { "szymach/c-pchart": "^3.0" },
$ composer require szymach/c-pchart
用法
了解如何使用库的最佳方式仍然是 官方 wiki。然而,我已经将至少每个图表的一个示例移植到 Markdown 文件中,以便您可以比较每个版本并了解如何使用当前实现。
通过 Image 类创建的图表
大部分基本图表是通过 CpChart\Image 类的方法创建的。以下是一个完整列表,包括示例代码。
独立图表
更高级的图表有自己的单独类,您需要使用该类来创建它们。和之前一样,以下是一个完整列表,包括示例代码。
条形码
pChart 库还提供了一种渲染 39 和 128 条形码的方式。以下可以找到创建它们的文档链接
缓存
如果您发现自己多次使用一组数据创建图表,您可以考虑使用库的缓存组件。请参阅文档的专用部分以获取有关如何操作的信息。
字体和调色板
如果您想使用任何字体或调色板文件,请只提供实际文件的名称,不要在传递给函数的字符串中添加 fonts 或 palettes 文件夹。如果您想从默认目录以外的目录加载它们,您需要添加文件的完整路径(例如 __DIR__.'/folder/to/my/palletes')。