官术网_书友最值得收藏!

Plotting

In this segment, we will see how to use Breeze to create a simple line plot from the Breeze DenseVector.

Breeze uses most of the functionality of Scala's plotting facilities, although the API is different. In the following example, we create two vectors x1 and y with some values, and plot a line and save it to a PNG file:

package linalg.plot 
import breeze.linalg._
import breeze.plot._

object BreezePlotSampleOne {
def main(args: Array[String]): Unit = {

val f = Figure()
val p = f.subplot(0)
val x = DenseVector(0.0,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8)
val y = DenseVector(1.1, 2.1, 0.5, 1.0,3.0, 1.1, 0.0, 0.5,2.5)
p += plot(x, y)
p.xlabel = "x axis"
p.ylabel = "y axis"
f.saveas("lines-graph.png")
}
}

The preceding code generates the following Line Plot:

Breeze also supports histogram. This is drawn for various sample sizes 100,000, and 100,0000 normally distributed random numbers into 100 buckets.

package linalg.plot 
import breeze.linalg._
import breeze.plot._

object BreezePlotGaussian {
def main(args: Array[String]): Unit = {
val f = Figure()
val p = f.subplot(2, 1, 1)
val g = breeze.stats.distributions.Gaussian(0, 1)
p += hist(g.sample(100000), 100)
p.title = "A normal distribution"
f.saveas("plot-gaussian-100000.png")
}
}

A Gaussian distribution with 1000000 elements is shown in this next image:

A Gaussian distribution with 100 elements
主站蜘蛛池模板: 铁岭县| 开平市| 安义县| 肃北| 普格县| 山东省| 深圳市| 孟津县| 甘南县| 渭源县| 鄢陵县| 溧水县| 沁源县| 乐都县| 永兴县| 项城市| 兰考县| 荣成市| 崇阳县| 石柱| 凉城县| 基隆市| 南通市| 安图县| 水富县| 正阳县| 沙田区| 紫阳县| 广灵县| 佳木斯市| 北川| 成武县| 额尔古纳市| 临高县| 文昌市| 乌海市| 芒康县| 长顺县| 莱芜市| 遂川县| 泰顺县|