今天在微博上看到这坑爹的方程: $ (x^2+y^2-1)^3 = {x^2} {y^3}$ 画出来如下: 跟个屁股似的,sigh… 翻出azalea的老文:http://azaleasays.com/2008/06/18/fomula-of-love/ 用ggplot2画一下这个爱的方程:$17x^2-16|x|y+17y^2 = 225 $ x <- seq(-sqrt(17), sqrt(17), 0.001) y1 <- 8*abs(x)/17 + 15* sqrt(17 - x^2)/17 y2 <- 8*abs(x)/17 - 15* sqrt(17 - x^2)/17 d <- data.frame(x=c(x,x),y=c(y1,y2)) require(ggplot2) p <- ggplot(d, aes(x,y)) p + geom_point(color="red") 还可以画出红心,适合今天七夕的日子。 p + geom_line(color="red") 画函数图,这种事情,还是用CAS方便点。 通过maxima来画,一条指令就行,还不用解方程: contour_plot(17*x^2-16*abs(x)*y+17*y^2-225, [x,-sqrt(17),sqrt(17)],[y,-15*sqrt(17)/17, sqrt(17)])

Continue reading

QQ plot

虽然R提供了很多作图函数,但自己实现一下,是非常好的体验,而且能够让我们了解其中的细节。

最近在读<Modern Applied Statistics With S-PLUS>,115页讲到Q-Q图时,书中给出了一个Trellis的实现。(Trellis是S/S-PLUS的可视化系统,在R里的对等实现是lattice包)。

我们知道一组数字,可以算4分位数,分别是25%, 50%(中位数), 75%,它等于该组数字中所有数值由小到大排列后第X%的数字,事实上每个数字都可以对应一个X%,Q-Q图很简单,把样本数据和理论分布算出来的quantiles,画个散点图而已。分别用base graph和ggplot2实现,图中三个图分别由系统函数qqnorm,和这里定义的qqplot, qqplot2画出来。

Continue reading

Author's picture

Guangchuang Yu

a senior-in-age-but-not-senior-in-knowledge bioinformatician

Postdoc researcher

Hong Kong