Jest wiele rzeczy, które mogą to zrobić. Jest stem
w domyślnej R, istnieje thisscat
ter funkcja działki, ale najlepsze jest to, że jest to pakiet txtplot
na CRAN która robi wykresy rozrzutu, boxplots, barplots, ślady gęstości, acfs i wykresy krzywych (jak funkcja curve
... troche).
Potrzebuję tego tylko raz na jakiś czas - ale jeśli próbuję przekazać przybliżony obraz grafiki w czystym tekście, tak jak czasami potrzebuję, to jest to ratowanie życia.
W przeszłości napisałem krótki fragment kodu R, który tworzył grafiki ascii w bardzo szybkim czasie (jak boczny wykres słupkowy lub wykres słupkowo-liśćkowy z numerami zastąpionymi symbolami, który rozwiązał problem Miałem) - ale nie zachowałem go, ponieważ rdzeń obejmuje głównie to terytorium.
Oczywiście funkcja "stołu" generuje wyjście ASCII i można nim manipulować w celu wykonania interesujących/użytecznych rzeczy semigraficznych.
Istnieje również pakiet ascii
, który może być użyty do renderowania różnych obiektów R w formie ASCII w podobny sposób do Sweave - przydatny do formatowania tabel i tak dalej. Po prostu formatowanie tabeli w ascii nie jest tym, do czego służy, ale możesz nadal korzystać z niego przy odrobinie pracy i odpowiednim formacie wyjściowym.
przykładowe dane wyjściowe txtplot:
wykres punktowy:
> with(cars,txtplot(speed,dist))
+----+-----------+------------+-----------+-----------+--+
120 + * +
| |
100 + +
| * * |
80 + * * +
| * * * |
60 + * * +
| * * * * * |
40 + * * * * * +
| * * * * * * * |
20 + * * * * * * * +
| * * * * |
| * * * |
0 +----+-----------+------------+-----------+-----------+--+
5 10 15 20 25
ACF Opis:
> txtacf(ldeaths)
+-+--------------+--------------+--------------+--------+
1 + * +
| * |
| * * * * * |
0.5 + * * * * * +
| * * * * * * * * |
| * * * * * * * * |
| * * * * * * * * |
0 + * * * * * * * * * * * * * * * * * * * * * +
| * * * * * * * * * * |
| * * * * * * * * * * |
| * * * * * * * * * |
-0.5 + * * * * * * +
| * * * * |
+-+--------------+--------------+--------------+--------+
0 0.5 1 1.5
ślad gęstość
> txtdensity(rnorm(100,m=5,s=.1))
+------+----------+----------+----------+----------+-------+
| ***** |
4 + ** *** +
| * *** |
| ** *** |
3 + ** *** +
| *** ** |
| ***** ** |
2 + *** ** +
| *** ** |
| ** ** |
1 + ** *** +
| *** ****** |
| ******** *** |
+------+----------+----------+----------+----------+-------+
4.8 4.9 5 5.1 5.2
Wykres pudełkowy:
> vc <- ToothGrowth[,2]=="VC"
> oj <- ToothGrowth[,2]=="OJ"
> txtboxplot(ToothGrowth[vc,1],ToothGrowth[oj,1])
5 10 15 20 25 30 35
|----+-------+--------+--------+--------+--------+-------+--|
+--------+-----------+
1 -------------| | |------------------
+--------+-----------+
+------------+----+
2 -------------| | |---------
+------------+----+
Legend: 1=ToothGrowth[vc, 1], 2=ToothGrowth[oj, 1]
krzywa działki: wykres
> txtcurve(sin(pi*x),from=0,to=2)
+--+-----------+------------+------------+-----------+--+
1 + ********* +
| *** ** |
| ** ** |
0.5 + ** ** +
| ** ** |
| * ** |
0 + * ** * +
| * * |
| ** ** |
-0.5 + *** ** +
| ** ** |
| ** *** |
-1 + ********* +
+--+-----------+------------+------------+-----------+--+
0 0.5 1 1.5 2
bar:
> txtbarchart(as.factor(res),pch="|")
+--+------------+------------+------------+------------+--+
50 + | +
| | |
40 + | +
| | |
30 + | | +
| | | |
| | | |
20 + | | | +
| | | | |
10 + | | | +
| | | | |
0 + | | | +
+--+------------+------------+------------+------------+--+
1 1.5 2 2.5 3
Legend: 1=A, 2=B, 3=C
Dodaj w funkcji stem
z domyślnymi grafiki R:
> stem(log(islands,10))
The decimal point is at the |
1 | 1111112222233444
1 | 5555556666667899999
2 | 3344
2 | 59
3 |
3 | 5678
4 | 012
i masz sporo reportażowy.
[tutaj] (http://stackoverflow.com/questions/9151884/how-can-i-generate-ascii-graphical-output-from-r) – user189035