#!/usr/bin/perl -w
use strict;
use Chart::Gnuplot;
# Data in arrays of x, y and z corrdinates
my (@x, @y, @z) = ();
for (my $x = -5; $x < 5; $x += 0.02)
{
my $y = sin($x*3);
my $z = cos($x*3);
push(@x, $x);
push(@y, $y);
push(@z, $z);
}
# Create chart object
my $chart = Chart::Gnuplot->new(
output => "plot3d_1.png",
title => "3D plot from arrays of x, y and z corrdinates",
xlabel => 'x',
ylabel => 'y',
zlabel => 'z',
);
# Create dataSet object
my $dataSet = Chart::Gnuplot::DataSet->new(
xdata => \@x,
ydata => \@y,
zdata => \@z,
style => 'lines',
);
# Plot the graph
$chart->plot3d($dataSet);