-
Notifications
You must be signed in to change notification settings - Fork 99
Expand file tree
/
Copy pathplot2d.h
More file actions
80 lines (68 loc) · 2.8 KB
/
plot2d.h
File metadata and controls
80 lines (68 loc) · 2.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
/* GNUPLOT - plot2d.h */
/*[
* Copyright 1999, 2004 Thomas Williams, Colin Kelley
*
* Permission to use, copy, and distribute this software and its
* documentation for any purpose with or without fee is hereby granted,
* provided that the above copyright notice appear in all copies and
* that both that copyright notice and this permission notice appear
* in supporting documentation.
*
* Permission to modify the software is granted, but not the right to
* distribute the complete modified source code. Modifications are to
* be distributed as patches to the released version. Permission to
* distribute binaries produced by compiling modified sources is granted,
* provided you
* 1. distribute the corresponding source modifications from the
* released version in the form of a patch file along with the binaries,
* 2. add special version identification to distinguish your version
* in addition to the base release version number,
* 3. provide your name and address as the primary contact for the
* support of your modified version, and
* 4. retain our contact information in regard to use of the base
* software.
* Permission to distribute the released version of the source code along
* with corresponding source modifications in the form of a patch file is
* granted with same provisions 2 through 4 for binary distributions.
*
* This software is provided "as is" without express or implied warranty
* to the extent permitted by applicable law.
]*/
#ifndef GNUPLOT_PLOT2D_H
# define GNUPLOT_PLOT2D_H
#include "syscfg.h"
#include "axis.h"
#include "gp_types.h"
#include "gadgets.h"
/* This allows a natural interpretation of providing only a single column in 'using' */
#define default_smooth_weight(option) \
(option == SMOOTH_BINS || option == SMOOTH_KDENSITY || option == SMOOTH_FREQUENCY)
/* Variables of plot2d.c needed by other modules: */
extern struct curve_points *first_plot;
#ifdef USE_POLAR_GRID
typedef struct pgrid {
t_dgrid3d_mode mode;
int theta_segments;
int r_segments;
int norm_q;
TBOOLEAN kdensity;
double scale;
double rmin;
double rmax;
} pgrid;
extern pgrid polar_grid;
extern pgrid default_polar_grid;
#endif
/* prototypes from plot2d.c */
void plotrequest(void);
void refresh_bounds(struct curve_points *first_plot, int nplots);
void polar_range_fiddling(struct axis *xaxis, struct axis *yaxis);
/* internal and external variables */
void cp_free(struct curve_points *cp);
void cp_extend(struct curve_points *cp, int num);
struct text_label *store_label(struct text_label *, struct coordinate *,
int i, char * string, double colorval);
void parse_plot_title(struct curve_points *this_plot,
char *xtitle, char *ytitle, TBOOLEAN *set_title);
void reevaluate_plot_title(struct curve_points *this_plot);
#endif /* GNUPLOT_PLOT2D_H */