| Ilya Zakharevich on Sat, 9 Oct 1999 15:00:25 -0400 |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
| Re: Update Gnuplot support to alpha 3.7.0.9 |
On Wed, Oct 06, 1999 at 08:44:47PM -0400, Ilya Zakharevich wrote:
> I checked gnuplot support of Pari with soon-to-be-released gnuplot
> 3.7.1, and of course a new development moved Gnuplot.h out of sync.
Now I checked the current development release 3.7.0.9 too. The
following patch is needed (this patch is to gnuplot-specific files only).
Now with PM terminal (OS/2) you got a really interactive graphing: you
can see x/y-coordinates corresponding to the mouse position, you can
annotate graphs with the coordinates of particular points, you can
save coordinates to clipboard etc.
Enjoy,
Ilya
--- ./src/graph/Gnuplot.h-goodfor-3.7.1 Thu Oct 7 03:05:10 1999
+++ ./src/graph/Gnuplot.h Thu Oct 7 03:27:52 1999
@@ -159,6 +159,37 @@ TBOOLEAN is_3d_plot;
/* End of 3.7.1 additions */
+/* 3.7.0-devel additions */
+
+extern float surface_rot_z;
+extern TBOOLEAN polar;
+extern double base_log_x, base_log_y, base_log_z;
+extern TBOOLEAN is_log_x, is_log_y, is_log_z;
+extern double log_base_log_x2, log_base_log_y2;
+extern double base_z;
+extern TBOOLEAN screen_ok;
+
+float surface_rot_z = 30.0;
+TBOOLEAN polar = 0;
+TBOOLEAN is_log_x = 0;
+TBOOLEAN is_log_y = 0;
+TBOOLEAN is_log_z = 0;
+double base_log_x = 0.0;
+double base_log_y = 0.0;
+double base_log_z = 0.0;
+double log_base_log_x = 0.0;
+double log_base_log_y = 0.0;
+double log_base_log_z = 0.0;
+double base_z = 0.0;
+TBOOLEAN screen_ok;
+
+void map3d_xy (double x, double y, double z, unsigned int *xt, unsigned int *yt)
+{
+ croak("Unsupported function map3d_xy called");
+}
+
+/* End of 3.7.0-devel additions */
+
/* Here are the only missing functions: */
struct value*
--- ./src/graph/plotgnuplot.c-goodfor-3.7.1 Thu Oct 7 03:05:10 1999
+++ ./src/graph/plotgnuplot.c Thu Oct 7 14:47:18 1999
@@ -35,14 +35,6 @@ rectdraw0(long *w, long *x, long *y, lon
PARI_get_plot(0);
-#if 0
- graphics(); /* Switch on terminal. */
-#else
- term_start_plot(); /* Switch on terminal. */
-#endif
- linetype(line_type); /* X does not work otherwise. */
- setpointsize(pointsize);
-
/* Find the info about the *actual* x and y-coords of the
rectangles. Use the first rectangle with has_graph attribute. */
@@ -74,6 +66,14 @@ rectdraw0(long *w, long *x, long *y, lon
max_array[FIRST_Y_AXIS] = max_array[SECOND_Y_AXIS] = 0;
}
+#if 0
+ graphics(); /* Switch on terminal. */
+#else
+ term_start_plot(); /* Switch on terminal. */
+#endif
+ linetype(line_type); /* X does not work otherwise. */
+ setpointsize(pointsize);
+
for(i=0;i<lw;i++)
{
e=rectgraph[w[i]]; p1=RHead(e); x0=x[i]; y0=y[i];