Plot diagrams in C/C++
Karaoulis Marios
marios_hellas_23 at yahoo.gr
Tue Nov 22 18:26:30 EET 2005
οκ. Ευχαριστώ για τις απαντήσεις. Βρήκα κάτι στην gnu
http://www.gnu.org/software/plotutils/
Δεν ξέρω ακόμα αν γίνεται να κάνεις πολύπλοκα διαγράμματα (π.χ. contour plots)
αλλά για αρχή μάλλον καλό είναι.
Αν βγάλω άκρη πως να ελέγχω το gnuplot μέσα από C θα ενημερώσω
Και για το λόγω του αληθές από το παραδειγματάκι που έχουν έκανα αυτό που θέλω
-----------------------------------------
#include <stdio.h>
#include <plot.h>
int main ()
{
int handle;
/* set a Plotter parameter */
pl_parampl ("PAGESIZE", "letter");
/* create a Postscript Plotter that writes to standard output */
if ((handle = pl_newpl ("X", stdin, stdout, stderr)) < 0)
{
fprintf (stderr, "Couldn't create Plotter\n");
return 1;
}
pl_selectpl (handle); /* select the Plotter for use */
if (pl_openpl () < 0) /* open Plotter */
{
fprintf (stderr, "Couldn't open Plotter\n");
return 1;
}
pl_fspace (0.0, 0.0, 100.0, 100.0); /* specify user coor system */
pl_flinewidth (0.25); /* line thickness in user coordinates */
pl_pencolorname ("red"); /* path will be drawn in red */
pl_erase (); /* erase Plotter's graphics display */
pl_fmove (0.0, 0.0); /* position the graphics cursor */
int A[10]={1 , 2 ,3 , 4 , 5 ,6 , 7, 8, 9, 10};
int B[10]={1 , 2 ,3 , 4 , 5 ,6 , 7, 8, 9, 10};
int i;
for (i=0;i<=9;i++)
pl_fcontrel(A[i],B[i]);
if (pl_closepl () < 0) /* close Plotter */
{
fprintf (stderr, "Couldn't close Plotter\n");
return 1;
}
pl_selectpl (0); /* select default Plotter */
if (pl_deletepl (handle) < 0) /* delete Plotter we used */
{
fprintf (stderr, "Couldn't delete Plotter\n");
return 1;
}
return 0;
}
----------------------------------------------------------------
Πλοτάρω δύο πίνακες Α και Β
Το compile γίνεται ώς εξής
gcc lala.c -lplot
Υ.Γ.Κάθε βοήθεια για το gnuplot_i θα εκτιμηθεί......
.
ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿðèbj(ÿôâçh~ÊZöÿ1¨¥
«-
æÞ²Û)jjk¢×¶*'jº.Øm¶ÿþf¢üÿ
More information about the Linux-greek-users
mailing list