Я рисую график гласных F1/F2 (пример: здесь). Каждая гласная имеет несколько точек/значений, и я хотел бы нарисовать эллипс вокруг точек, чтобы:
- эллипс покрывает не менее 80% точек (т.е. на картинке выше "i" имеет несколько значений, но они содержатся внутри эллипса).
- позиционируется в направлении на минимальные/максимальные значения.
Я, может, и усложняю, но тригонометрия и математика для меня греческие вещи. Ниже то, что я пробовал.
Эллипсоидкорпус()
Ellipsoidhull() находится в пакете пакет «кластер». Если я передам функции матрицу с F1 и F2, она, кажется, вычислит центр эллипса, но значения направления огромны. Например:
> olm
ol.f1 ol.f2 # f1/f2 data
[1,] 501.3 850.5
[2,] 488.5 906.5
[3,] 456.3 857.0
[4,] 505.8 895.3
[5,] 499.5 898.0
[6,] 431.8 891.5
[7,] 416.3 870.5
[8,] 506.0 887.8
[9,] 500.3 985.8
[10,] 513.5 955.3
[11,] 531.5 958.0
[12,] 483.0 847.3
[13,] 533.3 982.8
[14,] 480.8 881.8
[15,] 484.3 884.5
Если передано ellipsoidhull
:
> ellipsoidhull(olm)
'ellipsoid' in 2 dimensions:
center = ( 480.69 904.33 ); squared ave.radius d^2 = 2
and shape matrix =
ol.f1 ol.f2
ol.f1 2115.5 1449.5
ol.f2 1449.5 3558.2
hence, area = 14636
Я думаю, было бы несложно понять, как нарисовать эллипс, но «матрица формы» (максимальные/минимальные значения радиуса?) слишком высока. Кстати, спасибо #R на Freednode за советы.
Исходный код от EMU-R
Затем я изучил код пакета EMU-R, R, который работает с EMU, который может , среди прочего, нарисуйте F1/F2 с помощью эллипсоидов. Код, который, похоже, это делает, находится здесь, но я не понимаю, как рисуется эллипс .
Любая помощь приветствуется.