我想在R中绘制椭圆,双曲线.我怎样才能使用ggplot2?让我举个例子
x^2 +3xy+ 4x+ 2y+ 2y^2 = 0
Run Code Online (Sandbox Code Playgroud)
对于
x between -2 and 2
y between -2 and 2
Run Code Online (Sandbox Code Playgroud)
构造数据字段:
d <- transform(expand.grid(x=seq(-2,2,length=51),
y=seq(-2,2,length=51)),z=x^2+3*x*y+4*x+2*y+2*y^2)
Run Code Online (Sandbox Code Playgroud)
制作基本geom_contour情节,每个级别的颜色不同:
g1 <- qplot(x,y,z=z,data=d,colour=factor(..level..),geom="contour")
Run Code Online (Sandbox Code Playgroud)
现在除去"0"级以外的所有线路.这取决于stat_contour选择零作为其轮廓水平之一,在某些情况下可能是脆弱的...(对我而言,这对我来说并不明显,它stat_contour()允许控制选择的水平,相当于基础R 或基础R 的levels参数- 如果它是的,这个过程会有点容易.如果有人关心这个,可以向https://github.com/hadley/ggplot2/issues提交一份愿望清单项目......)contour()contourLines()
g1 + scale_colour_discrete(breaks="0",limits=c("0","0"),na.value=NA,
guide="none")
Run Code Online (Sandbox Code Playgroud)
