通过调用PGSWIN来设置window属性。
1 | PGSWIN (1975.0, 1984.0, 5.0, 20.0) |
X轴从1975到1984
Y轴从5到20
通过调用PGSWIN来设置window属性。
1 | PGSWIN (1975.0, 1984.0, 5.0, 20.0) |
X轴从1975到1984
Y轴从5到20
这里将上面几个小部分提到的函数全部展示一下。
其实调用PGPAGE、PGSVP、 PGSWIN和 PGBOX 是比较不方便的方法,虽然可以随心所欲的展示一些成果。
这四个函数也可用通过一个集成的函数来搞定,即PGENV (for PGPLOT ENVironment) 。
比如
与下面四个函数的效果是相同的
默认的视口输出居中并留有一定的余量用于注解标记。
但是如果想改变这些默认设置,可以使用pgvport(比例象限)、pgvsize(实际尺寸)等函数。这些函数都会在后面有详细介绍。
详细的安装参考 文章Ubuntu/Debain/Fedora/Mac/CentOS 安装PGPLOT 。
本教程既是PGPLOT的入门教程也是参考手册。
入门教程:介绍了如何使用PGPLOT
➢ 参考手册:关于PGPLOT的所有函数的定义和使用实例。
➢ 第二章:入门指导,列举了一个最简单的绘图程序
➢ 第三章:基本特性
➢ 第四章:介绍四种组成图像的基元:线条、图标记、文字、区域填充
➢ 第五章:如何改变基元的属性,比如颜色、线条类型、字体等
➢ 第六章:描述了一些经过包装的高级程序及函数
➢ 第七章:PGPLOT图像交互式的能力
➢ 第八章:图元文件的使用
附录A:PGPLOT所有的函数原型
附录B:PGPLOT注释可以用的字符和符号
附录C:PGPLOT不同平台的安装
附录D:PGPLOT支持的设备细节介绍
附录E:扩展PGPLOT以支持其他设备的说明
附录F:C语言中如何调用PGPLOT
PGPLOT支持多种输出设备,每种设备都有其特定的用途和特点。理解设备系统是使用PGPLOT的基础,它决定了图形的输出方式和质量。
PGPLOT设备可以分为两大类:
产生永久性文件输出的设备,如PostScript、PNG、PDF等格式文件。
在显示器上实时显示图形的设备,如X11窗口、终端等。
1 | device_name(file_name)/device_type |
参数说明:
device_name:设备名称标识符file_name:输出文件名(可选)device_type:设备类型说明1 | // 基本设备选择 |
/XWINDOW功能:标准的X11图形窗口
特点:
使用示例:
1 | #include <cpgplot.h> |
/XSERVE功能:持久性X11窗口
特点:
使用示例:
1 | #include <cpgplot.h> |
/TEXT功能:文本终端输出
特点:
/VTERM功能:VT100兼容终端
特点:
/PS功能:标准PostScript文件输出
特点:
配置选项:
1 | // 基本PostScript输出 |
使用示例:
1 | #include <cpgplot.h> |
/VPS功能:纵向PostScript输出
特点:
/CPS功能:彩色PostScript输出
特点:
/PNG功能:PNG图像文件输出
特点:
配置选项:
1 | // 基本PNG输出 |
使用示例:
1 | #include <cpgplot.h> |
/GIF功能:GIF图像文件输出
特点:
/TPNG功能:透明背景PNG输出
特点:
/PDF功能:PDF文档输出
特点:
/LATEX功能:LaTeX图形环境输出
特点:
/NULL功能:空设备,无输出
用途:
/MEM功能:内存设备
用途:
1 | #include <cpgplot.h> |
1 | #include <cpgplot.h> |
1 | #include <cpgplot.h> |
1 | #include <cpgplot.h> |
/XWINDOW 或 /XSERVE/PS 或 /PDF/PNG 或 /GIF/PS 或 /LATEX/PNG 或 /PDF1 | #include <cpgplot.h> |
1 | #include <cpgplot.h> |
1 | #include <cpgplot.h> |
X11设备问题:
文件设备问题:
库文件问题:
1 | #include <cpgplot.h> |
1 | #include <cpgplot.h> |
1 | # 在 ~/.bashrc 或 ~/.zshrc 中添加 |
1 | #include <cpgplot.h> |
1 | #include <cpgplot.h> |
PGPLOT的设备系统提供了灵活的输出选择,从交互式显示到高质量文件输出。选择合适的设备对于创建满足需求的图形至关重要。
/XWINDOW 进行交互式调试通过合理选择和配置设备,您将能够创建出满足各种需求的高质量图形输出。
PGPLOT的正确运行需要适当的环境配置。本文档详细介绍如何设置环境变量、配置系统路径,以及解决常见的环境配置问题。
PGPLOT主要依赖以下环境变量:
| 变量名 | 用途 | 默认值 | 必需性 |
|---|---|---|---|
PGPLOT_DIR |
PGPLOT库文件路径 | 无 | 必需 |
PGPLOT_DEV |
默认输出设备 | 无 | 推荐 |
LD_LIBRARY_PATH |
动态库搜索路径 | 系统默认 | 必需 |
PGPLOT_FONT |
字体文件路径 | 系统默认 | 可选 |
PGPLOT_DRIVER_PATH |
设备驱动路径 | 系统默认 | 可选 |
不同操作系统可能需要额外的环境变量:
| 系统 | 额外变量 | 说明 |
|---|---|---|
| Linux | LD_LIBRARY_PATH |
动态库路径 |
| macOS | DYLD_LIBRARY_PATH |
动态库路径 |
| Windows | PATH |
可执行文件和库路径 |
| Solaris | LD_LIBRARY_PATH |
动态库路径 |
作用:指定PGPLOT库文件和头文件的安装目录
设置方法:
1 | # 在 ~/.bashrc 或 ~/.zshrc 中添加 |
常见路径:
1 | # 系统安装 |
验证设置:
1 | # 检查变量是否设置 |
作用:设置PGPLOT的默认输出设备
设置方法:
1 | # 设置默认设备 |
常用设备设置:
1 | # 开发环境 |
作用:指定动态链接库的搜索路径
设置方法:
1 | # 添加到现有路径 |
系统特定设置:
1 | # 在 ~/.bashrc 中添加 |
1 | # 在 ~/.zshrc 或 ~/.bash_profile 中添加 |
1 | # 在系统环境变量中添加 |
1 | # PGPLOT环境配置 |
1 | # PGPLOT环境配置 |
1 | # 支持多个PGPLOT版本 |
1 | # 开发环境配置 |
1 | # 系统级PGPLOT配置 |
1 | # 创建配置文件 |
1 | # 创建 ~/.pgplotrc 文件 |
1 | # 在 ~/.bashrc 中添加 |
1 | # 检查所有PGPLOT相关变量 |
1 | # 检查库文件是否存在 |
1 | # 创建测试程序 |
1 | # 运行测试程序 |
错误信息:
1 | error while loading shared libraries: libpgplot.so: cannot open shared object file |
解决方案:
1 | # 检查库文件路径 |
错误信息:
1 | fatal error: cpgplot.h: No such file or directory |
解决方案:
1 | # 查找头文件 |
错误信息:
1 | Failed to start PGPLOT device |
解决方案:
1 | # 检查设备支持 |
错误信息:
1 | Permission denied |
解决方案:
1 | # 检查文件权限 |
1 | # 将最常用的路径放在前面 |
1 | # 更新库缓存 |
1 | # 使用绝对路径 |
1 | # 一次性设置所有变量 |
1 | # 在 ~/.bashrc 中 |
1 | # 在 ~/.zshrc 中 |
1 | # 在系统环境变量中 |
正确的环境配置是PGPLOT成功运行的基础。通过合理设置环境变量、配置库路径,并遵循最佳实践,您可以确保PGPLOT在各种环境下都能正常工作。
PGPLOT_DIR 和 LD_LIBRARY_PATH 是必需的PGPLOT_DEV 可以简化设备选择PGPLOT_DIR 环境变量LD_LIBRARY_PATH 或 DYLD_LIBRARY_PATHPGPLOT_DEV 默认设备通过系统性的环境配置,您将能够充分利用PGPLOT的强大功能,创建出高质量的科学图表和可视化应用。
本章节介绍了用PGPLOT创建一个图像的基本过程,主要分为下面几个章节:
本章节介绍了用PGPLOT创建一个图像的基础子程序,并有一些示例程序。
一个图像主要有下面几个部分组成:
在使用PGPLOT画图的时候,至少要用到4个PGPLOT的子程序。
当然,如果在一个设备上想画很多的图形,只需要重复23即可。而对于14,除非想在不同的设备上输出,否则只调用一次就够了。
在编译并链接好程序后,执行程序是会提示:
Graphics device/type (? to see list, default /Xserve):
这里我们输入“?”,查看一下可用的设备,我的如下所示,这个设备列表与安装时修改的drives.list相关联。
1 | Graphics device/type (? to see list, default /Xserve): ? |
默认输出之屏幕,如上述图像所有,然后我选择/PS,就会发现在可执行程序相同目录中多了一个文件PGPLOT.ps文件(这个对于科研人员使用Latex调用图比较方便)。