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

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
主站蜘蛛池模板: 兴仁县| 玉环县| 黄骅市| 华宁县| 阜新市| 石渠县| 阿合奇县| 鄢陵县| 通城县| 五家渠市| 嵩明县| 凌海市| 遂川县| 平潭县| 朔州市| 仙桃市| 尉氏县| 宜昌市| 玉环县| 天台县| 兰溪市| 扬州市| 松阳县| 通江县| 名山县| 衡山县| 合山市| 应城市| 高邮市| 类乌齐县| 科技| 文山县| 无棣县| 怀来县| 英吉沙县| 景泰县| 涪陵区| 漳平市| 红原县| 杨浦区| 绵阳市|