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

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
主站蜘蛛池模板: 浏阳市| 休宁县| 砚山县| 新化县| 汨罗市| 雅安市| 海丰县| 蒙阴县| 绍兴市| 淮南市| 陈巴尔虎旗| 长泰县| 滦南县| 阳山县| 徐水县| 武夷山市| 江口县| 盘锦市| 乌恰县| 江陵县| 舞钢市| 五寨县| 蓬安县| 巴塘县| 嘉定区| 政和县| 厦门市| 宜都市| 龙泉市| 潮安县| 东方市| 兴城市| 张家港市| 宁津县| 孝感市| 新野县| 始兴县| 奉节县| 滁州市| 无极县| 湄潭县|