- sgp2_color (ez.clr_axis);
- if (ez.o_tag && !ez.o_grid && !ez.o_box && ez.s_ycross) {
- sgp2_move_abs (yaxispos - charwidth, ya_min);
- sgp2_line_abs (yaxispos + charwidth, ya_min);
- }
- sgp2_move_abs (yaxispos, ya_min);
- sgp2_line_abs (yaxispos, ya_max);
- if (ez.o_tag && !ez.o_grid && !ez.o_box) {
- sgp2_move_abs (yaxispos - charwidth, ya_max);
- sgp2_line_abs (yaxispos + charwidth, ya_max);
- }
-
- if (ez.o_grid == TRUE) {
- sgp2_color (ez.clr_grid);
- for (i = 0; i <= y_nint; i++) {
- y = yt_min + yn_tickinc * i;
- sgp2_move_abs (xa_max, y);
- sgp2_line_abs (xa_min, y);
- }
- }
- sgp2_move_abs (ylbl_col,ya_min + (ya_max-ya_min)/2 - strlen(ez.c_ylabel)*charheight);
- textangle (HALFPI);
- charsize (2 * charheight, 2 * charwidth); /* axis reversed */
- settextclr (ez.clr_label, -1);
- sgp2_draw_text (ez.c_ylabel);
- textangle (0.0);
- charsize (charwidth, charheight);
- minorinc = yn_tickinc / (ez.o_yminortick + 1);
-
- for (i = 0; i <= y_nint; i++) {
- y = yt_min + yn_tickinc * i;
- sgp2_color (ez.clr_axis);
- sgp2_move_abs (yaxispos, y);
- sgp2_line_abs (yaxispos + yticklen, y);
- if (i != y_nint)
- for (j = 1; j <= ez.o_yminortick; j++) {
- y2 = y + minorinc * j;
- sgp2_move_abs (yaxispos, y2);
- sgp2_line_abs (yaxispos + TICKRATIO * yticklen, y2);
- }
- axis_near = FALSE;
- if (yaxispos + ytl_ofs > xa_min && ez.o_xaxis != NOAXIS) {
- double yw, x, y, d;
-
- yw = ygw_min + i * yw_tickinc;
- sgp2_window (xgw_min, ygw_min, xgw_max, ygw_max);
- sgp2_viewport (xgn_min, ygn_min, xgn_max, ygn_max);
- wc_to_ndc (x, yw, &x, &y);
- sgp2_window (xp_min, yp_min, xp_max, yp_max);
- sgp2_viewport (xp_min, yp_min, xp_max, yp_max);
- d = y - xaxispos;
- if (ez.o_xticks == ABOVE && d >= 0 && d < 0.9 * yn_tickinc)
- axis_near = TRUE;
- if (ez.o_xticks == BELOW && d <= 0 && d > -0.9 * yn_tickinc)
- axis_near = TRUE;
- }
- if (ez.o_ytlabel == TRUE && axis_near == FALSE) {
- snprintf (str, sizeof(str), y_numfmt, ygw_min + yw_tickinc * i);
- sgp2_move_abs (yaxispos + ytl_ofs, y - 0.5 * charheight);
- settextclr (ez.clr_number, -1);
- sgp2_draw_text (str);
- }
- }
- } /* y - axis */
-}