[R] scaling with relative units in plots or retrieving axes	limits in plots
    Jannis 
    bt_jannis at yahoo.de
       
    Tue May 18 16:50:24 CEST 2010
    
    
  
Thanks for the replies! If anybody  encounters a similar problem, the function that now does what I wanted is attached below.
Best
Jannis
trnsf.coords = function(array_x,array_y)
# This function transfers relative coordinates between 0 and 1 for two arrays with x
# and y values into the coordinate system of the current plot.
    
{
    plot_extremes=par()$usr
    x_min=plot_extremes[1]
    x_max=plot_extremes[2]
    y_min=plot_extremes[3]
    y_max=plot_extremes[4]
    x_trans=x_min+(array_x*x_max-x_min)
    y_trans=y_min+(array_y*y_max-y_min)
    output=list(x=x_trans,y=y_trans)
    return(output)
}
--- Jannis <bt_jannis at yahoo.de> schrieb am Di, 18.5.2010:
> Von: Jannis <bt_jannis at yahoo.de>
> Betreff: [R] scaling with relative units in plots or retrieving axes limits in plots
> An: r-help at stat.math.ethz.ch
> Datum: Dienstag, 18. Mai, 2010 14:23 Uhr
> Dears,
> 
> 
> a way to define x and y positions in plots in relative
> numbers (e.g in fractions  between 0 and 1 referring to
> relative positions inside the plot region) would really help
> me. One example I would need this to would be to add text
> via text() to a plot always at a defined spot, e.g the upper
> left corner. Until now I always determined maximum x and y
> values and used those, but defining relative positions
> straight away would be much easier. Possible solutions:
> 
> 1. Predefined function
> Is there anything available that lets me run (for
> example):
> 
> text(0.5,0.5,'middle')
> 
> which always puts text on these relative points?
> 
> 
> 
> 2. Create my own function
> It would be straightforward to create my own function that
> translates the relative number to the axes values in the
> actual plot, so that 
> 
> text(my.function(0.5,0.5),'middle')
> 
> would do what I want. For this I would need to be able to
> somehow retrieve the axis limits for x and y axes. Is there
> any way I could do this after having called plot()?
> 
> 
> 
> Thanks for your help!
> 
> 
> Jannis
> 
> 
> 
> 
> ______________________________________________
> R-help at r-project.org
> mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained,
> reproducible code.
> 
    
    
More information about the R-help
mailing list