2016-01-11 34 views
16

Czy istnieje sposób włączenia funkcji locator() w powiększeniu wykresu RStudio? Działa to tylko w mniejszym oknie (domyślny dolny prawy) z RStudio ale po kliknięciu na widza już otwarty jako osobne okno, nie ma współrzędne są ujęte:Powiększenie plotera i lokalizator w aplikacji RStudio

plot(iris$Petal.Width, iris$Petal.Length) 
locator() 

Być może odpowiedź jest taka, że ​​obecnie nie jest realizowany i dlatego nie mogłem znaleźć wzmianki o tym w Internecie.

Używam wersji RStudio 0.99.491.

Z góry dziękuję.

+1

działa z x11: 'x11(); spisek (1: 4); lokalizator (1) 'jakiego używasz OS? Zakładam windows, ponieważ odpowiedź poniżej nie będzie miała znaczenia, jeśli nie używasz okien .. działa również z 'kwarc(); spisek (1: 4); lokalizator (1) '. kwarc działa bezbłędnie z n danym lub brakującym. Wydaje się, że X11 jest wybiórcze z brakiem n, ale nie ulega awarii, jeśli jesteś cierpliwy podczas ucieczki. – rawr

Odpowiedz

1

nie bezpośrednio korzystać z funkcji RStudio za „Zoom”, ale robi się dość blisko, co prawdopodobnie jesteś po:

df <- data.frame(1:4) 
windows() 
plot(df) 
locator(1) 

Kilka uwag:

  1. Nie można dynamicznie zmienić rozmiar okna. Jeśli chcesz powiększyć, najpierw musisz zadzwonić pod numer windows(), a następnie zmienić rozmiar okna, a następnie wykonać plot(df).
  2. Należy podać argument n dla locator(). W przeciwnym razie będzie to crash sesji R powodu this bug. (który nie został rozwiązany AFAIK)

Ale jeśli twoim celem jest, aby móc korzystać locator() po powiększonym wersji działce (czyli jeśli masz bardzo zatłoczona fabuła), powinno to wystarczyć.

+1

Przepraszam. Cała sesja studio R crash jest tutaj trochę przerażająca. – boshek

+0

Tak, tak właśnie myślałem. To denerwujące. Może problem z RStudio lub skontaktuj się ze wsparciem, że ten błąd nadal istnieje i musi zostać naprawiony. – Felix

+1

Jest to dość istotny błąd, biorąc pod uwagę, że razem z pakietem 'zoom()' można połączyć 'zm()' i 'lokalizator()' i stworzyć całkiem skuteczny instrument do wizualnego wybierania poszczególnych punktów danych . Ale ponieważ 'zoom()' zasadniczo tworzy kolejną instancję 'windows()', prowadzi to również do awarii sesji (przynajmniej na moim komputerze). Ale może ta funkcjonalność zostanie dodana do pakietu 'manipulate()' w przyszłości. W każdym razie myślę, że to dobre pytanie. – Felix