1 /* @include ajgraph *********************************************************** 2 ** 3 ** General Plot/Printing routines. 4 ** 5 ** @version $Revision: 1.42 $ 6 ** @modified $Date: 2011/10/18 14:23:41 $ by $Author: rice $ 7 ** @@ 8 ** 9 ** This library is free software; you can redistribute it and/or 10 ** modify it under the terms of the GNU Lesser General Public 11 ** License as published by the Free Software Foundation; either 12 ** version 2.1 of the License, or (at your option) any later version. 13 ** 14 ** This library is distributed in the hope that it will be useful, 15 ** but WITHOUT ANY WARRANTY; without even the implied warranty of 16 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 17 ** Lesser General Public License for more details. 18 ** 19 ** You should have received a copy of the GNU Lesser General Public 20 ** License along with this library; if not, write to the Free Software 21 ** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 22 ** MA 02110-1301, USA. 23 ** 24 ******************************************************************************/ 25 26 27 #ifndef AJGRAPH_H 28 #define AJGRAPH_H 29 30 /* ========================================================================= */ 31 /* ============================= include files ============================= */ 32 /* ========================================================================= */ 33 34 #include "ajdefine.h" 35 #include "plplot.h" 36 #include "ajgraphstruct.h" 37 #include "ajdefine.h" 38 #include "ajstr.h" 39 #include "ajseqdata.h" 40 #include <stdlib.h> 41 #include <stdio.h> 42 #include <string.h> 43 44 AJ_BEGIN_DECLS 45 46 47 48 49 /* ========================================================================= */ 50 /* =============================== constants =============================== */ 51 /* ========================================================================= */ 52 53 54 55 56 #define GRAPH_XGAP 60 57 #define GRAPH_YGAP 60 58 #define GRAPH_TITLE_GAP 60 59 60 #define AJGRAPH_X_BOTTOM 0x0001 /* print xaxis bottom line */ 61 #define AJGRAPH_Y_LEFT 0x0002 /* print yaxis left line */ 62 #define AJGRAPH_X_TOP 0x0004 /* print xaxis top line */ 63 #define AJGRAPH_Y_RIGHT 0x0008 /* printf y axis on the right*/ 64 #define AJGRAPH_X_TICK 0x0010 /* add tick marks for x axis (bottom) */ 65 #define AJGRAPH_Y_TICK 0x0020 /* add tick marks for y axis (left) */ 66 #define AJGRAPH_X_LABEL 0x0040 /* add x axis label */ 67 #define AJGRAPH_Y_LABEL 0x0080 /* add y axis label */ 68 #define AJGRAPH_TITLE 0x0100 /* add title */ 69 #define AJGRAPH_JOINPOINTS 0x0200 /* join the point data by a line */ 70 #define AJGRAPH_OVERLAP 0x0400 /* write plots on top of each other */ 71 #define AJGRAPH_Y_NUMLABEL_LEFT 0x0800 72 #define AJGRAPH_Y_INVERT_TICK 0x1000 73 #define AJGRAPH_Y_GRID 0x2000 74 #define AJGRAPH_X_NUMLABEL_ABOVE 0x4000 75 #define AJGRAPH_X_INVERT_TICK 0x8000 76 #define AJGRAPH_X_GRID 0x10000 77 #define AJGRAPH_CIRCLEPOINTS 0x20000 78 #define AJGRAPH_SUBTITLE 0x40000 79 #define AJGRAPH_GAPS 0x80000 80 81 #define GRAPH_XY (AJGRAPH_X_BOTTOM + AJGRAPH_Y_LEFT + AJGRAPH_X_TOP + \ 82 AJGRAPH_Y_RIGHT + AJGRAPH_X_TICK + AJGRAPH_Y_TICK + \ 83 AJGRAPH_Y_LABEL + AJGRAPH_JOINPOINTS + AJGRAPH_X_LABEL + \ 84 AJGRAPH_TITLE + AJGRAPH_SUBTITLE + AJGRAPH_OVERLAP) 85 86 #define GRAPH_XY_MAIN (AJGRAPH_X_BOTTOM + AJGRAPH_Y_LEFT + AJGRAPH_Y_RIGHT + \ 87 AJGRAPH_X_TOP + AJGRAPH_Y_TICK + AJGRAPH_X_LABEL + \ 88 AJGRAPH_Y_LABEL + AJGRAPH_JOINPOINTS + AJGRAPH_TITLE + \ 89 AJGRAPH_SUBTITLE + AJGRAPH_OVERLAP) 90 91 92 93 /* ========================================================================= */ 94 /* ============================== public data ============================== */ 95 /* ========================================================================= */ 96 97 98 99 100 /* ========================================================================= */ 101 /* =========================== public functions ============================ */ 102 /* ========================================================================= */ 103 104 105 106 /* 107 ** Prototype definitions 108 */ 109 110 void ajGraphicsListDevices (AjPList list); 111 void ajGraphicsxyListDevices (AjPList list); 112 ajint* ajGraphicsBasecolourNewNuc(const AjPStr codes); 113 ajint* ajGraphicsBasecolourNewProt(const AjPStr codes); 114 ajint ajGraphicsCheckColourC(const char* text); 115 ajint ajGraphicsCheckColourS(const AjPStr colour); 116 117 void ajGraphicsGetCharsize(float *defheight, float *currentscale); 118 ajint ajGraphicsGetFgcolour(void); 119 ajuint ajGraphicsGetOutfiles(AjPList* files); 120 void ajGraphGetParamsPage(const AjPGraph thys, 121 float *xp,float *yp, ajint *xleng, 122 ajint *yleng, ajint *xoff, ajint *yoff); 123 void ajGraphicsGetParamsPage(float *xp,float *yp, ajint *xleng, 124 ajint *yleng, ajint *xoff, ajint *yoff); 125 126 void ajGraphicsResetBgcolour(void); 127 void ajGraphicsResetFgcolour(void); 128 129 void ajGraphicsSetBgcolourBlack(void); 130 void ajGraphicsSetBgcolourWhite(void); 131 float ajGraphicsSetCharscale(float scale); 132 float ajGraphicsSetCharsize(float size); 133 float ajGraphicsSetDefcharsize(float size); 134 void ajGraphicsSetDevice(const AjPGraph graph); 135 ajint ajGraphicsSetFgcolour(ajint colour); 136 void ajGraphicsSetPortrait(AjBool set); 137 void ajGraphicsSetPenwidth(float width); 138 ajint ajGraphicsSetFillpat (ajint style); 139 ajint ajGraphicsSetLinestyle (ajint style); 140 void ajGraphicsSetLabelsC(const char *x, const char *y, 141 const char *title, const char *subtitle); 142 void ajGraphicsSetLabelsS(const AjPStr x, const AjPStr y, 143 const AjPStr title, const AjPStr subtitle); 144 145 void ajGraphicsPlenv (float xmin, float xmax, float ymin, float ymax, 146 ajint flags); 147 void ajGraphicsPrintType(AjPFile outf, AjBool full); 148 void ajGraphicsSetPagesize(ajuint pagewidth, ajuint pageheight); 149 150 void ajGraphicsClose (void); 151 void ajGraphicsCloseWin (void); 152 153 void ajGraphicsDumpDevices (void); 154 void ajGraphicsxyDumpDevices (void); 155 156 void ajGraphicsCalcRange(const float *array, ajuint npoints, 157 float *min, float *max); 158 159 PLFLT *ajGraphicsCalcCoord(PLFLT xcentre, PLFLT ycentre, PLFLT Radius, 160 PLFLT Angle); 161 PLFLT ajGraphicsCalcTextlengthC(const char *text); 162 PLFLT ajGraphicsCalcTextlengthS(const AjPStr str); 163 PLFLT ajGraphicsCalcTextheight(void); 164 PLFLT ajGraphicsCalcDistance(PLFLT xx1, PLFLT yy1, 165 PLFLT xx2, PLFLT yy2); 166 PLFLT ajGraphicsCalcCharsize(PLFLT xx1, PLFLT yy1, 167 PLFLT xx2, PLFLT yy2, 168 const char *text, PLFLT TextHeight); 169 170 void ajGraphicsDrawarcArc(PLFLT xcentre, PLFLT ycentre, PLFLT radius, 171 PLFLT startangle, PLFLT endangle); 172 void ajGraphicsDrawbarsHoriz(ajuint num, PLFLT *y, 173 PLFLT *xmin, PLFLT *xmax); 174 void ajGraphicsDrawbarsVert(ajuint num, PLFLT *x, 175 PLFLT *ymin, PLFLT *ymax); 176 void ajGraphicsDrawposBox(PLFLT xx0, PLFLT yy0,PLFLT size); 177 void ajGraphicsDrawposBoxFill(PLFLT xx0, PLFLT yy0, PLFLT size); 178 void ajGraphicsDrawposCircle(PLFLT xcentre, PLFLT ycentre, 179 float radius); 180 void ajGraphicsDrawposDia(PLFLT xx0, PLFLT yy0, PLFLT size); 181 void ajGraphicsDrawposDiaFill(PLFLT xx0, PLFLT yy0, PLFLT size); 182 void ajGraphicsDrawsetDots(ajuint nhum, PLFLT *xx1,PLFLT *yy1); 183 void ajGraphicsDrawposLine(PLFLT xx1,PLFLT yy1,PLFLT xx2,PLFLT yy2); 184 void ajGraphicsDrawsetLines(ajuint num, PLFLT *xx,PLFLT *yy, 185 PLFLT *xx2,PLFLT *yy2); 186 void ajGraphicsDrawsetPoly(ajuint num, PLFLT *x, PLFLT *y); 187 void ajGraphicsDrawsetPolyFill(ajuint num, PLFLT *x, PLFLT *y); 188 void ajGraphicsDrawposRect(PLFLT x, PLFLT y,PLFLT xx1, PLFLT yy1) ; 189 void ajGraphicsDrawposRectFill(PLFLT x, PLFLT y, 190 PLFLT xx1, PLFLT yy1) ; 191 void ajGraphicsDrawarcRect(PLFLT xcentre, PLFLT ycentre, PLFLT radius, 192 PLFLT startangle, PLFLT endangle, 193 PLFLT height); 194 void ajGraphicsDrawarcRectFill(PLFLT xcentre, PLFLT ycentre, 195 PLFLT radius, 196 PLFLT startangle, PLFLT endangle, 197 PLFLT height); 198 void ajGraphicsSetRlabelC(const char *text); 199 void ajGraphicsSetRlabelS(const AjPStr str); 200 void ajGraphicsDrawsetSymbols(ajuint num, PLFLT *xx,PLFLT *yy, 201 ajuint symbol); 202 void ajGraphicsDrawposTextJustify(PLFLT x, PLFLT y, 203 const char *txt, 204 PLFLT just); 205 void ajGraphicsDrawarcTextJustify(PLFLT xcentre, PLFLT ycentre, 206 PLFLT radius, PLFLT startangle, 207 PLFLT endangle, 208 const char *txt, PLFLT just); 209 void ajGraphicsDrawposTextAtend(PLFLT x, PLFLT y, const char *txt); 210 void ajGraphicsDrawposTextAtmid(PLFLT x, PLFLT y, const char *txt); 211 void ajGraphicsDrawposTextAtstart(PLFLT x, PLFLT y, 212 const char *txt); 213 void ajGraphicsDrawposTextAtlineJustify(PLFLT x, PLFLT y, 214 PLFLT x2, PLFLT y2, 215 const char *txt, PLFLT just); 216 void ajGraphicsDrawposTri(PLFLT x, PLFLT y, PLFLT x2, PLFLT y2, 217 PLFLT x3, PLFLT y3); 218 void ajGraphicsDrawposTriFill(PLFLT x, PLFLT y, PLFLT x2, PLFLT y2, 219 PLFLT x3, PLFLT y3); 220 221 AjPGraph ajGraphNew (void); 222 AjPGraph ajGraphxyNewI (ajuint numofpoints); 223 224 void ajGraphClear(AjPGraph thys); 225 226 const char* ajGraphGetSubtitleC(const AjPGraph thys); 227 const AjPStr ajGraphGetSubtitleS(const AjPGraph thys); 228 const char* ajGraphGetTitleC(const AjPGraph thys); 229 const AjPStr ajGraphGetTitleS(const AjPGraph thys); 230 const char* ajGraphGetXlabelC(const AjPGraph thys); 231 const AjPStr ajGraphGetXlabelS(const AjPGraph thys); 232 const char* ajGraphGetYlabelC(const AjPGraph thys); 233 const AjPStr ajGraphGetYlabelS(const AjPGraph thys); 234 235 void ajGraphInitSeq (AjPGraph thys, const AjPSeq seq); 236 AjBool ajGraphIsData(const AjPGraph thys); 237 238 239 void ajGraphNewpage (AjPGraph thys, AjBool resetdefaults); 240 void ajGraphAddLine (AjPGraph thys, float x, float y, 241 float x2, float y2, ajint colour); 242 void ajGraphAddRect (AjPGraph thys, float x, float y, 243 float x2, float y2, ajint colour, 244 ajint fill); 245 void ajGraphAddTextC (AjPGraph thys, float x, float y, 246 ajint colour, const char *text); 247 void ajGraphAddTextScaleC (AjPGraph thys, float x, float y, 248 ajint colour, float scale, 249 const char *text); 250 void ajGraphAddTextS (AjPGraph thys, float x, float y, 251 ajint colour, const AjPStr str); 252 void ajGraphAddTextScaleS (AjPGraph thys, float x, float y, 253 ajint colour, float scale, 254 const AjPStr str); 255 void ajGraphOpenFlags(AjPGraph thys, PLFLT xmin, PLFLT xmax, 256 PLFLT ymin, PLFLT ymax, ajint flags); 257 void ajGraphOpenPlotset (AjPGraph thys, ajuint numofsets); 258 void ajGraphOpenWin (AjPGraph thys, float xmin, float xmax, 259 float ymin, float ymax); 260 void ajGraphOpenMm(AjPGraph thys, float * xmm, float *ymm); 261 AjBool ajGraphSetDevicetype(AjPGraph thys, const AjPStr type); 262 void ajGraphSetMulti (AjPGraph thys, ajuint numsets); 263 void ajGraphicsSetFilename (const AjPGraph graph); 264 void ajGraphTrace (const AjPGraph thys); 265 AjBool ajGraphDataAdd (AjPGraph thys, AjPGraphdata graphdata); 266 AjBool ajGraphDataReplace (AjPGraph thys, AjPGraphdata graphdata); 267 AjBool ajGraphDataReplaceI (AjPGraph thys, AjPGraphdata graphdata, 268 ajuint num); 269 void ajGraphAppendTitleC(AjPGraph thys, const char* txt); 270 void ajGraphAppendTitleS(AjPGraph thys, const AjPStr str); 271 void ajGraphxyDel (AjPGraph* pmult); 272 void ajGraphxyDisplay (AjPGraph thys, AjBool closeit ); 273 void ajGraphxySetRanges (AjPGraph thys); 274 AjBool ajGraphxySetDevicetype (AjPGraph thys, const AjPStr devicetype); 275 void ajGraphxyShowPointsCircle (AjPGraph thys, AjBool set); 276 void ajGraphSetFlag (AjPGraph thys, ajint flag, AjBool istrue); 277 void ajGraphxyShowPointsJoin (AjPGraph thys, AjBool set); 278 void ajGraphxySetMinmax(AjPGraph thys,float xmin,float xmax, 279 float ymin,float ymax); 280 void ajGraphSetOutfileS (AjPGraph thys, const AjPStr txt); 281 void ajGraphSetOutfileC (AjPGraph thys, const char *txt); 282 void ajGraphxySetflagOverlay (AjPGraph thys, AjBool set); 283 284 void ajGraphShowSubtitle (AjPGraph thys, AjBool set); 285 void ajGraphShowTitle (AjPGraph thys, AjBool set); 286 287 void ajGraphSetDatanameC(AjPGraph thys, const char *name); 288 void ajGraphSetDatanameS(AjPGraph thys, const AjPStr name); 289 void ajGraphSetDescC(AjPGraph thys, const char* txt); 290 void ajGraphSetDescS(AjPGraph thys, const AjPStr str); 291 292 void ajGraphSetOutdirS(AjPGraph thys, const AjPStr str); 293 void ajGraphSetTitleC(AjPGraph thys, const char *title); 294 void ajGraphSetTitleS(AjPGraph thys, const AjPStr title); 295 void ajGraphSetSubtitleC(AjPGraph thys, const char *title); 296 void ajGraphSetSubtitleS(AjPGraph thys, const AjPStr title); 297 void ajGraphSetXlabelC(AjPGraph thys, const char *title); 298 void ajGraphSetXlabelS(AjPGraph thys, const AjPStr title); 299 void ajGraphSetYlabelC(AjPGraph thys, const char *title); 300 void ajGraphSetYlabelS(AjPGraph thys, const AjPStr title); 301 302 void ajGraphxySetflagGaps(AjPGraph thys, AjBool overlap); 303 304 void ajGraphxyShowRaxis(AjPGraph thys, AjBool set); 305 void ajGraphxyShowUaxis(AjPGraph thys, AjBool set); 306 void ajGraphxyShowUnum(AjPGraph thys, AjBool set); 307 void ajGraphxyShowXaxis(AjPGraph thys, AjBool set); 308 void ajGraphxyShowXlabel(AjPGraph thys, AjBool set); 309 void ajGraphxyShowXtick(AjPGraph thys, AjBool set); 310 void ajGraphxyShowYaxis(AjPGraph thys, AjBool set); 311 void ajGraphxyShowYlabel(AjPGraph thys, AjBool set); 312 void ajGraphxyShowYnum(AjPGraph thys, AjBool set); 313 void ajGraphxyShowYtick(AjPGraph thys, AjBool set); 314 315 void ajGraphxySetXendF(AjPGraph thys, float val); 316 void ajGraphxyShowXgrid(AjPGraph thys, AjBool set); 317 void ajGraphxyShowXinvert(AjPGraph thys, AjBool set); 318 void ajGraphxySetXrangeII(AjPGraph thys, ajint start, ajint end); 319 void ajGraphxySetXstartF(AjPGraph thys, float val); 320 void ajGraphxySetYendF(AjPGraph thys, float val); 321 void ajGraphxyShowYgrid(AjPGraph thys, AjBool set); 322 void ajGraphxyShowYinvert(AjPGraph thys, AjBool set); 323 void ajGraphxySetYrangeII(AjPGraph thys, ajint start, ajint end); 324 void ajGraphxySetYstartF(AjPGraph thys, float val); 325 326 AjPGraphdata ajGraphdataNew (void); 327 AjPGraphdata ajGraphdataNewI (ajuint numsets); 328 329 void ajGraphdataDel(AjPGraphdata *thys); 330 void ajGraphdataAddposLine (AjPGraphdata graphs, 331 float x, float y, 332 float x2, float y2, ajint colour); 333 void ajGraphdataAddposRect (AjPGraphdata graphs, 334 float x, float y, 335 float x2, float y2, 336 ajint colour, ajint fill); 337 void ajGraphdataAddposTextC (AjPGraphdata graphs, 338 float x, float y, 339 ajint colour, const char *text); 340 void ajGraphdataAddposTextS (AjPGraphdata graphs, 341 float x, float y, 342 ajint colour, const AjPStr str); 343 void ajGraphdataAddposTextScaleC (AjPGraphdata graphs, 344 float x, float y, 345 ajint colour, float scale, 346 const char *text); 347 void ajGraphdataAddposTextScaleS (AjPGraphdata graphs, 348 float x, float y, 349 ajint colour, float scale, 350 const AjPStr str); 351 void ajGraphdataSetMinmax (AjPGraphdata graphdata, float xmin, 352 float xmax, float ymin, float ymax); 353 354 void ajGraphdataSetTruescale(AjPGraphdata graphdata, float xmin, 355 float xmax, float ymin, float ymax); 356 void ajGraphdataSetTypeC(AjPGraphdata graphdata, 357 const char *txt); 358 void ajGraphdataSetTypeS(AjPGraphdata graphdata, 359 const AjPStr str); 360 361 void ajGraphdataCalcXY (AjPGraphdata graphdata, 362 ajuint numofpoints, 363 float start, float incr, 364 const float* y); 365 void ajGraphdataAddXY (AjPGraphdata graphdata, 366 const float *x, const float *y); 367 void ajGraphdataSetDatanameC (AjPGraphdata graphdata, 368 const char *title); 369 void ajGraphdataSetDatanameS (AjPGraphdata graphdata, 370 const AjPStr title); 371 void ajGraphdataSetSubtitleC (AjPGraphdata graphdata, 372 const char *title); 373 void ajGraphdataSetSubtitleS (AjPGraphdata graphdata, 374 const AjPStr title); 375 void ajGraphdataSetTitleC (AjPGraphdata graphdata, 376 const char *title); 377 void ajGraphdataSetTitleS (AjPGraphdata graphdata, 378 const AjPStr title); 379 void ajGraphdataSetXlabelC (AjPGraphdata graphdata, 380 const char *title); 381 void ajGraphdataSetXlabelS (AjPGraphdata graphdata, 382 const AjPStr title); 383 void ajGraphdataSetYlabelC (AjPGraphdata graphdata, 384 const char *title); 385 void ajGraphdataSetYlabelS (AjPGraphdata graphdata, 386 const AjPStr title); 387 void ajGraphdataSetColour (AjPGraphdata graphdata, 388 ajint colour); 389 void ajGraphdataSetLinetype (AjPGraphdata graphdata, 390 ajint type); 391 void ajGraphdataTrace (const AjPGraphdata thys); 392 393 void ajGraphicsExit(void); 394 void ajGraphicsUnused(void); 395 396 /* 397 ** End of prototype definitions 398 */ 399 400 401 #ifdef AJ_COMPILE_DEPRECATED_BOOK 402 #endif 403 #ifdef AJ_COMPILE_DEPRECATED 404 405 __deprecated void ajGraphPlenv (float xmin, float xmax, 406 float ymin, float ymax, 407 ajint flags); 408 __deprecated void ajGraphPrintType(AjPFile outf, AjBool full); 409 __deprecated void ajGraphDumpDevices (void); 410 __deprecated void ajGraphxyDumpDevices (void); 411 __deprecated void ajGraphListDevices (AjPList list); 412 __deprecated void ajGraphxyListDevices (AjPList list); 413 414 __deprecated void ajGraphOpenPlot(AjPGraph thys, ajuint numofsets); 415 __deprecated void ajGraphOpen (AjPGraph thys, PLFLT xmin, PLFLT xmax, 416 PLFLT ymin, PLFLT ymax, ajint flags); 417 __deprecated void ajGraphClose (void); 418 __deprecated void ajGraphCloseWin (void); 419 __deprecated void ajGraphdataAddLine (AjPGraphdata graphs, 420 float x, float y, 421 float x2, float y2, 422 ajint colour); 423 __deprecated void ajGraphdataAddRect (AjPGraphdata graphs, 424 float x, float y, 425 float x2, float y2, 426 ajint colour, ajint fill); 427 __deprecated void ajGraphdataSetXY (AjPGraphdata graphdata, 428 const float *x, const float *y); 429 __deprecated void ajGraphdataAddTextScale (AjPGraphdata graphs, 430 float xx1, float yy1, 431 ajint colour, float scale, 432 const char *text); 433 __deprecated void ajGraphdataAddText (AjPGraphdata graphs, 434 float xx1, float yy1, 435 ajint colour, const char *text); 436 __deprecated void ajGraphdataSetMaxima(AjPGraphdata graphdata, 437 float xmin, float xmax, 438 float ymin, float ymax); 439 __deprecated void ajGraphdataSetMaxMin (AjPGraphdata graphdata, 440 float xmin, float xmax, 441 float ymin, float ymax); 442 443 __deprecated void ajGraphdataSetLineType (AjPGraphdata graphdata, 444 ajint type); 445 __deprecated void ajGraphxySetXinvert(AjPGraph thys, AjBool set); 446 __deprecated void ajGraphxySetXgrid(AjPGraph thys, AjBool set); 447 __deprecated void ajGraphxySetGaps(AjPGraph thys, AjBool set); 448 __deprecated void ajGraphxySetOverLap (AjPGraph thys, AjBool overlap); 449 __deprecated void ajGraphxySetMaxMin(AjPGraph thys, 450 float xmin,float xmax, 451 float ymin,float ymax); 452 __deprecated void ajGraphxySetJoinPoints (AjPGraph thys, AjBool set); 453 __deprecated void ajGraphxySetCirclePoints (AjPGraph thys, AjBool set); 454 __deprecated void ajGraphAddText (AjPGraph thys, float xx1, float yy1, 455 ajint colour, const char *text); 456 __deprecated void ajGraphAddTextScale (AjPGraph thys, 457 float xx1, float yy1, 458 ajint colour, float scale, 459 const char *text); 460 __deprecated void ajGraphxyCheckMaxMin (AjPGraph thys); 461 __deprecated void ajGraphdataSetXTitleC (AjPGraphdata graphdata, 462 const char *title); 463 __deprecated void ajGraphdataSetXTitleS (AjPGraphdata graphdata, 464 const AjPStr title); 465 __deprecated void ajGraphdataSetYTitleC (AjPGraphdata graphdata, 466 const char *title); 467 __deprecated void ajGraphdataSetYTitleS (AjPGraphdata graphdata, 468 const AjPStr title); 469 __deprecated const char* ajGraphGetXTitleC(const AjPGraph thys); 470 __deprecated const AjPStr ajGraphGetXTitleS(const AjPGraph thys); 471 __deprecated const char* ajGraphGetYTitleC(const AjPGraph thys); 472 __deprecated const AjPStr ajGraphGetYTitleS(const AjPGraph thys); 473 __deprecated void ajGraphdataSetSubTitleC (AjPGraphdata graphdata, 474 const char *title); 475 __deprecated void ajGraphdataSetSubTitleS (AjPGraphdata graphdata, 476 const AjPStr title); 477 __deprecated const char* ajGraphGetSubTitleC(const AjPGraph thys); 478 __deprecated const AjPStr ajGraphGetSubTitleS(const AjPGraph thys); 479 __deprecated void ajGraphdataSetYTitle (AjPGraphdata graphdata, 480 const AjPStr title); 481 __deprecated void ajGraphdataSetXTitle (AjPGraphdata graphdata, 482 const AjPStr title); 483 __deprecated void ajGraphdataSetTitle (AjPGraphdata graphdata, 484 const AjPStr title); 485 __deprecated void ajGraphdataSetSubTitle (AjPGraphdata graphdata, 486 const AjPStr title); 487 __deprecated const AjPStr ajGraphGetSubTitle(const AjPGraph thys); 488 __deprecated const AjPStr ajGraphGetTitle(const AjPGraph thys); 489 __deprecated const AjPStr ajGraphGetXTitle(const AjPGraph thys); 490 __deprecated const AjPStr ajGraphGetYTitle(const AjPGraph thys); 491 __deprecated PLFLT ajGraphTextLength(PLFLT xx1, PLFLT yy1, 492 PLFLT xx2, PLFLT yy2, 493 const char *text); 494 __deprecated PLFLT ajGraphTextHeight(PLFLT xx1, PLFLT xx2, 495 PLFLT yy1, PLFLT yy2); 496 __deprecated PLFLT ajGraphFitTextAtline(PLFLT xx1, PLFLT yy1, 497 PLFLT xx2, PLFLT yy2, 498 const char *text, 499 PLFLT TextHeight); 500 __deprecated PLFLT ajGraphDistPts(PLFLT xx1, PLFLT yy1, 501 PLFLT xx2, PLFLT yy2); 502 __deprecated void ajGraphArrayMaxMin(const float *array, 503 ajint npoints, 504 float *min, float *max); 505 __deprecated PLFLT *ajComputeCoord(PLFLT xcentre, PLFLT ycentre, 506 PLFLT Radius, PLFLT Angle); 507 __deprecated ajint ajGraphicsGetColourFore(void); 508 __deprecated void ajGraphicsDrawRlabelC(const char *text); 509 __deprecated void ajGraphicsDrawRlabelS(const AjPStr str); 510 __deprecated void ajGraphNewPage (AjPGraph thys, 511 AjBool resetdefaults); 512 __deprecated void ajGraphSetTitlePlus(AjPGraph thys, 513 const AjPStr title); 514 __deprecated AjBool ajGraphxySet (AjPGraph thys, const AjPStr type); 515 __deprecated void ajGraphSetOutputDirS(AjPGraph thys, 516 const AjPStr str); 517 __deprecated void ajGraphSetOut (AjPGraph thys, const AjPStr txt); 518 __deprecated void ajGraphSetOutC (AjPGraph thys, const char *txt); 519 __deprecated void ajGraphSetName (const AjPGraph thys); 520 __deprecated void ajGraphSetPage(ajuint width, ajuint height); 521 __deprecated AjBool ajGraphSet (AjPGraph thys, const AjPStr type); 522 __deprecated void ajGraphSetPenWidth(float width); 523 __deprecated ajint ajGraphSetFillPat (ajint style); 524 __deprecated ajint ajGraphSetLineStyle (ajint style); 525 526 __deprecated void ajGraphSetDevice(const AjPGraph thys); 527 __deprecated ajint ajGraphInfo(AjPList* files); 528 __deprecated void ajGraphGetOut (float *xp,float *yp, 529 ajint *xleng, ajint *yleng, 530 ajint *xoff, ajint *yoff); 531 __deprecated ajint ajGraphGetColour(void); 532 __deprecated ajint* ajGraphGetBaseColour (void); 533 __deprecated ajint* ajGraphGetBaseColourNuc(const AjPStr codes); 534 __deprecated ajint* ajGraphGetBaseColourProt(const AjPStr codes); 535 __deprecated float ajGraphSetCharScale (float scale); 536 __deprecated float ajGraphSetCharSize(float size); 537 __deprecated void ajGraphGetCharSize(float *defheight, 538 float *currentscale); 539 __deprecated float ajGraphSetDefCharSize (float size); 540 __deprecated void ajGraphxySetXBottom (AjPGraph thys, AjBool set); 541 __deprecated void ajGraphxySetXLabelTop (AjPGraph thys, AjBool set); 542 __deprecated void ajGraphxySetXTop (AjPGraph thys, AjBool set); 543 __deprecated void ajGraphxySetXEnd (AjPGraph thys, float val); 544 __deprecated void ajGraphxySetXGrid (AjPGraph thys, AjBool set); 545 __deprecated void ajGraphxySetXInvTicks (AjPGraph thys, AjBool set); 546 __deprecated void ajGraphxySetXLabel (AjPGraph thys, AjBool set); 547 __deprecated void ajGraphxySetXRangeII (AjPGraph thys, 548 ajint start, ajint end); 549 __deprecated void ajGraphxySetXStart (AjPGraph thys, float val); 550 __deprecated void ajGraphxySetYEnd (AjPGraph thys, float val); 551 __deprecated void ajGraphxySetYGrid (AjPGraph thys, AjBool set); 552 __deprecated void ajGraphxySetYInvTicks (AjPGraph thys, AjBool set); 553 __deprecated void ajGraphxySetYStart (AjPGraph thys, float val); 554 __deprecated void ajGraphxySetYLeft (AjPGraph thys, AjBool set); 555 __deprecated void ajGraphxySetYLabel (AjPGraph thys, AjBool set); 556 __deprecated void ajGraphxySetXTick (AjPGraph thys, AjBool set); 557 __deprecated void ajGraphxySetYLabelLeft (AjPGraph thys, AjBool set); 558 __deprecated void ajGraphxySetYRangeII (AjPGraph thys, 559 ajint start, ajint end); 560 __deprecated void ajGraphxySetYTick (AjPGraph thys, AjBool set); 561 __deprecated void ajGraphxySetYRight(AjPGraph thys, AjBool set); 562 __deprecated void ajGraphSetDir(AjPGraph thys, const AjPStr txt); 563 __deprecated void ajGraphSetDesc(AjPGraph thys, const AjPStr title); 564 __deprecated void ajGraphSetSubTitle (AjPGraph thys, 565 const AjPStr title); 566 __deprecated void ajGraphSetSubTitleC (AjPGraph thys, 567 const char *title); 568 __deprecated void ajGraphSetXTitle (AjPGraph thys, 569 const AjPStr title); 570 __deprecated void ajGraphSetXTitleC (AjPGraph thys, 571 const char *title); 572 __deprecated void ajGraphSetYTitle (AjPGraph thys, 573 const AjPStr title); 574 __deprecated void ajGraphSetYTitleC (AjPGraph thys, 575 const char *title); 576 __deprecated void ajGraphSetSubTitleDo (AjPGraph thys, AjBool set); 577 __deprecated void ajGraphSetTitleDo (AjPGraph thys, AjBool set); 578 __deprecated void ajGraphSetTitle (AjPGraph thys, const AjPStr title); 579 __deprecated void ajGraphLabel (const char *x, const char *y, 580 const char *title, 581 const char *subtitle); 582 __deprecated void ajGraphDrawTextOnCurve(PLFLT xcentre, PLFLT ycentre, 583 PLFLT Radius, 584 PLFLT StartAngle, 585 PLFLT EndAngle, 586 const char *Text, PLFLT just); 587 __deprecated void ajGraphFillRectangleOnCurve(PLFLT xcentre, 588 PLFLT ycentre, 589 PLFLT Radius, 590 PLFLT BoxHeight, 591 PLFLT StartAngle, 592 PLFLT EndAngle); 593 594 __deprecated void ajGraphRectangleOnCurve(PLFLT xcentre, PLFLT ycentre, 595 PLFLT Radius, 596 PLFLT BoxHeight, 597 PLFLT StartAngle, 598 PLFLT EndAngle); 599 __deprecated void ajGraphPartCircle(PLFLT xcentre, PLFLT ycentre, 600 PLFLT Radius, 601 PLFLT StartAngle, PLFLT EndAngle); 602 __deprecated void ajGraphBox (PLFLT xx0, PLFLT yy0,PLFLT size); 603 __deprecated void ajGraphBoxFill (PLFLT xx0, PLFLT yy0, PLFLT size); 604 __deprecated void ajGraphRectFill (PLFLT xx0, PLFLT yy0, 605 PLFLT xx1, PLFLT yy1) ; 606 __deprecated void ajGraphRect (PLFLT xx0, PLFLT yy0, 607 PLFLT xx1, PLFLT yy1) ; 608 __deprecated void ajGraphLine (PLFLT xx1,PLFLT yy1, 609 PLFLT xx2,PLFLT yy2); 610 __deprecated void ajGraphCircle (PLFLT xcentre, PLFLT ycentre, 611 float radius); 612 __deprecated void ajGraphDia (PLFLT xx0, PLFLT yy0, PLFLT size); 613 __deprecated void ajGraphDiaFill (PLFLT xx0, PLFLT yy0, PLFLT size); 614 __deprecated void ajGraphPoly (ajuint n, PLFLT *x, PLFLT *y); 615 __deprecated void ajGraphPolyFill (ajuint n, PLFLT *x, PLFLT *y); 616 __deprecated void ajGraphLines (PLFLT *xx1,PLFLT *yy1, 617 PLFLT *xx2,PLFLT *yy2, 618 ajuint numoflines); 619 __deprecated void ajGraphTextLine (PLFLT xx1, PLFLT yy1, 620 PLFLT xx2, PLFLT yy2, 621 const char *text, PLFLT just); 622 __deprecated void ajGraphTri (PLFLT xx1, PLFLT yy1, 623 PLFLT xx2, PLFLT yy2, 624 PLFLT x3, PLFLT y3); 625 __deprecated void ajGraphTriFill (PLFLT xx1, PLFLT yy1, 626 PLFLT xx2, PLFLT yy2, 627 PLFLT x3, PLFLT y3); 628 __deprecated void ajGraphDots (PLFLT *xx1,PLFLT *yy1, 629 ajuint numofdots); 630 __deprecated void ajGraphSymbols( ajuint numofdots, 631 PLFLT *xx1,PLFLT *yy1, 632 ajuint symbol); 633 __deprecated void ajGraphText (PLFLT xx1, PLFLT yy1, 634 const char *text, PLFLT just); 635 __deprecated void ajGraphTextEnd (PLFLT xx1, PLFLT yy1, 636 const char *text); 637 __deprecated void ajGraphTextMid (PLFLT xx1, PLFLT yy1, 638 const char *text); 639 __deprecated void ajGraphTextStart (PLFLT xx1, PLFLT yy1, 640 const char *text); 641 642 __deprecated void ajGraphHoriBars (ajuint numofpoints, PLFLT *y, 643 PLFLT *xmin, PLFLT *xmax); 644 __deprecated void ajGraphVertBars (ajuint numofpoints, PLFLT *x, 645 PLFLT *ymin, PLFLT *ymax); 646 647 __deprecated void ajGraphSetBackBlack (void); 648 __deprecated void ajGraphSetBackWhite (void); 649 __deprecated void ajGraphColourBack (void); 650 __deprecated void ajGraphColourFore(void); 651 __deprecated ajint ajGraphSetFore (ajint colour); 652 653 __deprecated void ajGraphInit (const char *pgm, 654 ajint argc, char * const argv[]); 655 __deprecated void ajGraphInitPV(const char *pgm, 656 ajint argc, char * const argv[], 657 const char *package, 658 const char *packversion); 659 __deprecated void ajGraphLabelYRight (const char *text); 660 661 __deprecated void ajGraphSetOri(ajint ori); 662 663 __deprecated ajint ajGraphCheckColour (const AjPStr colour); 664 665 #endif 666 667 AJ_END_DECLS 668 669 #endif /* !AJGRAPH_H */ 670