perl - "First steps with PDL"使用 Gnuplot 创建的图像与 PDL Book 中的图像不同

标签 perl gnuplot pdl

我从http://pdl.perl.org/?page=FirstSteps找到了一个例子即:

pdl> use PDL::Graphics::Simple
pdl> imag (sin(rvals(200,200)+1)

我尝试运行这个示例,但是 unsuccessfully 。因此,我尝试调整示例,使其能够在 Windows 上与 Gnuplot 一起使用:

pdl> use PDL::Graphics::Gnuplot;
pdl> gplot(with => 'image', sin(rvals(200,200)+1) );

但是,结果图与 PDL 书中给出的图不同,因为它包含额外的“V”形蓝色条纹:

enter image description here

来自 PDL Book 的比较图像看起来干净得多:

enter image description here

我不知道是什么导致了这种差异。

最佳答案

我刚刚使用 Gnuplot 5.2、前沿 PDL、最新的 PDL::Graphics::Gnuplot (PGG) 和 PDL::Graphics::Simple (PGS) 进行了尝试。我对 PGG 以及使用 PGS 的书得到了与您相同的结果。

使两者的颜色方案相同的方法是更改​​ Gnuplot 调用以首先提供绘图选项:

pdl> use PDL::Graphics::Gnuplot
pdl> gplot({clut => 'sepia', colorbox => '', justify =>1}, with => 'image', sin(rvals(200,200)+1))

因为,无论好坏,PGS 默认为棕褐色调。 colorbox 选项是色标,如果它不存在并且您希望数据仍然是正方形,则必须添加一个真正的 justify 值。

关于perl - "First steps with PDL"使用 Gnuplot 创建的图像与 PDL Book 中的图像不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60476145/

相关文章:

perl - 在 CPAN 上部署 xs 模块

GetWindowPlacement 处的 Perl Win32::API 缓冲区溢出

Gnuplot:未定义/缺失数据点和绘图样式 'with image'

python - 获取 pdf 页面上的现有边距

perl - 如何在perl中对全数字矩阵进行排序

gnuplot - 在 pm3d map 中画一条线

plot - 在 gnuplot smooth 中包含数据点

perl - 我可以从 Perl pdl2 shell 中检索命令的完整历史记录(如 bash 中的历史记录)吗?

perl - 使用没有 "Subroutine redefined"的 PDL::常量

perl - 如何将 PDL 图像转换为 GdkPixbuf