Это пример построения «параметрического уравнения», то есть пары двух отдельных уравнений для x и y, которые имеют общий параметр. Вы можете найти много общих кривых и форм, которые могут быть написаны в рамках такой структуры.
dat<- data.frame(t=seq(0, 2*pi, by=0.1) )
xhrt <- function(t) 16*sin(t)^3
yhrt <- function(t) 13*cos(t)-5*cos(2*t)-2*cos(3*t)-cos(4*t)
dat$y=yhrt(dat$t)
dat$x=xhrt(dat$t)
with(dat, plot(x,y, type="l"))
Другие параметрические (а также неявные и полярные) уравнения сердца
Вы также можете «разогреть» его, используя возможность «заполнить» функции polygon
:
with(dat, polygon(x,y, col="hotpink"))
И если вы просто хотите, чтобы маленькие сердечки были разбросаны по разным местам, вы можете использовать версию шрифта Symbol «heart» после просмотра страницы help(points)
и использования функции TestChars
:
points(c(10,-10, -15, 15), c(-10, -10, 10, 10), pch=169, font=5)
Пользователи Windows могут захотеть узнать, помогает ли добавление пакета Cairo получить доступ к символам карт, включая «сердца». (Когда я тестировал функцию TestChars на «стороне» WinXP моего MacPro, я не символов» в MS-Word ничего не обнаружил. Поэтому я провел поиск в Rhelp и нашел недавнее сообщение Иво Уэлча. Он сообщал об ошибке, но на моей машине они выглядят нормально.) Далее примечание... Я думаю, что коды сердец и бубнов в его поменялись местами.
library(Cairo)
clubs <- expression(symbol('\247'))
hearts <- expression(symbol('\251'))
diamonds <- expression(symbol('\250'))
spades <- expression(symbol('\252'))
csymbols <- c(clubs, hearts, diamonds, spades)
plot( 0, xlim=c(0,5), ylim=c(0,2), type="n" )
clr <- c("black", "red", "red", "black")
for (i in 1:4) {
hline <- function( yloc, ... )
for (i in 1:length(yloc))
lines( c(-1,6), c(yloc[i],yloc[i]), col="gray")
hline(0.9);
hline(1.0);
hline(1.1);
hline(1.2)
text( i, 1, csymbols[i], col=clr[i], cex=5 )
text( i, 0.5, csymbols[i], col=clr[i] ) }
# Also try this
plot(1,1)
text(x=1+0.2*cos(seq(0, 2*pi, by=.5)),
y=1+0.2*sin(seq(0, 2*pi, by=.5)),
expression(symbol('\251') ) )
person
IRTFM
schedule
10.11.2011
r
, но вас, вероятно, заинтересует кардиополярное уравнение, и / или другие маршруты. - person Grant Thomas   schedule 10.11.2011