alighment
This commit is contained in:
parent
08ca46748a
commit
2b3fa980ee
@ -568,6 +568,27 @@ end
|
|||||||
gr_view_xcenter(viewport_plotarea) = 0.5 * (viewport_plotarea[1] + viewport_plotarea[2])
|
gr_view_xcenter(viewport_plotarea) = 0.5 * (viewport_plotarea[1] + viewport_plotarea[2])
|
||||||
gr_view_ycenter(viewport_plotarea) = 0.5 * (viewport_plotarea[3] + viewport_plotarea[4])
|
gr_view_ycenter(viewport_plotarea) = 0.5 * (viewport_plotarea[3] + viewport_plotarea[4])
|
||||||
|
|
||||||
|
gr_view_xposition(viewport_plotarea, position) = viewport_plotarea[1] + position * (viewport_plotarea[2] - viewport_plotarea[1])
|
||||||
|
gr_view_yposition(viewport_plotarea, position) = viewport_plotarea[3] + position * (viewport_plotarea[4] - viewport_plotarea[3])
|
||||||
|
|
||||||
|
function position(symb)
|
||||||
|
if symb == :top || symb == :right
|
||||||
|
return 0.95
|
||||||
|
elseif symb == :left || symb == :bottom
|
||||||
|
return 0.05
|
||||||
|
end
|
||||||
|
return 0.5
|
||||||
|
end
|
||||||
|
|
||||||
|
function alignment(symb)
|
||||||
|
if symb == :top || symb == :right
|
||||||
|
return GR.TEXT_HALIGN_RIGHT
|
||||||
|
elseif symb == :left || symb == :bottom
|
||||||
|
return GR.TEXT_HALIGN_LEFT
|
||||||
|
end
|
||||||
|
return GR.TEXT_HALIGN_CENTER
|
||||||
|
end
|
||||||
|
|
||||||
function gr_legend_pos(sp::Subplot, w, h, viewport_plotarea)
|
function gr_legend_pos(sp::Subplot, w, h, viewport_plotarea)
|
||||||
legend_leftw, legend_rightw, legend_textw, x_legend_offset = w
|
legend_leftw, legend_rightw, legend_textw, x_legend_offset = w
|
||||||
legend_dy, legendh, y_legend_offset = h
|
legend_dy, legendh, y_legend_offset = h
|
||||||
@ -1564,12 +1585,14 @@ function gr_display(sp::Subplot{GRBackend}, w, h, viewport_canvas)
|
|||||||
if xaxis[:guide] != ""
|
if xaxis[:guide] != ""
|
||||||
h = 0.01 + gr_axis_height(sp, xaxis)
|
h = 0.01 + gr_axis_height(sp, xaxis)
|
||||||
gr_set_font(guidefont(xaxis), sp)
|
gr_set_font(guidefont(xaxis), sp)
|
||||||
|
xposition = gr_view_xposition(viewport_plotarea, position(xaxis[:guidefonthalign]))
|
||||||
|
xalign = alignment(xaxis[:guidefonthalign])
|
||||||
if xaxis[:guide_position] == :top || (xaxis[:guide_position] == :auto && xaxis[:mirror] == true)
|
if xaxis[:guide_position] == :top || (xaxis[:guide_position] == :auto && xaxis[:mirror] == true)
|
||||||
GR.settextalign(GR.TEXT_HALIGN_CENTER, GR.TEXT_VALIGN_TOP)
|
GR.settextalign(xalign, GR.TEXT_VALIGN_TOP)
|
||||||
gr_text(gr_view_xcenter(viewport_plotarea), viewport_plotarea[4] + h, xaxis[:guide])
|
gr_text(xposition, viewport_plotarea[4] + h, xaxis[:guide])
|
||||||
else
|
else
|
||||||
GR.settextalign(GR.TEXT_HALIGN_CENTER, GR.TEXT_VALIGN_BOTTOM)
|
GR.settextalign(xalign, GR.TEXT_VALIGN_BOTTOM)
|
||||||
gr_text(gr_view_xcenter(viewport_plotarea), viewport_plotarea[3] - h, xaxis[:guide])
|
gr_text(xposition, viewport_plotarea[3] - h, xaxis[:guide])
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -1577,12 +1600,14 @@ function gr_display(sp::Subplot{GRBackend}, w, h, viewport_canvas)
|
|||||||
w = 0.02 + gr_axis_width(sp, yaxis)
|
w = 0.02 + gr_axis_width(sp, yaxis)
|
||||||
gr_set_font(guidefont(yaxis), sp)
|
gr_set_font(guidefont(yaxis), sp)
|
||||||
GR.setcharup(-1, 0)
|
GR.setcharup(-1, 0)
|
||||||
|
yposition = gr_view_yposition(viewport_plotarea, position(yaxis[:guidefontvalign]))
|
||||||
|
yalign = alignment(yaxis[:guidefontvalign])
|
||||||
if yaxis[:guide_position] == :right || (yaxis[:guide_position] == :auto && yaxis[:mirror] == true)
|
if yaxis[:guide_position] == :right || (yaxis[:guide_position] == :auto && yaxis[:mirror] == true)
|
||||||
GR.settextalign(GR.TEXT_HALIGN_CENTER, GR.TEXT_VALIGN_BOTTOM)
|
GR.settextalign(yalign, GR.TEXT_VALIGN_BOTTOM)
|
||||||
gr_text(viewport_plotarea[2] + w, gr_view_ycenter(viewport_plotarea), yaxis[:guide])
|
gr_text(viewport_plotarea[2] + w, yposition, yaxis[:guide])
|
||||||
else
|
else
|
||||||
GR.settextalign(GR.TEXT_HALIGN_CENTER, GR.TEXT_VALIGN_TOP)
|
GR.settextalign(yalign, GR.TEXT_VALIGN_TOP)
|
||||||
gr_text(viewport_plotarea[1] - w, gr_view_ycenter(viewport_plotarea), yaxis[:guide])
|
gr_text(viewport_plotarea[1] - w, yposition, yaxis[:guide])
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user