diff options
author | Jakob Odersky <jodersky@gmail.com> | 2012-10-30 13:50:46 +0100 |
---|---|---|
committer | Jakob Odersky <jodersky@gmail.com> | 2012-10-30 13:50:46 +0100 |
commit | 6d839c29de8d4d4abd9ead17f6b55a6d13989476 (patch) | |
tree | b6d1efd88d17e6a86929f2f633057230bf1d97e6 /src/main/scala | |
parent | 93a80038f08687e72f23adbbdf7813d17aeaf04a (diff) | |
download | scalam-6d839c29de8d4d4abd9ead17f6b55a6d13989476.tar.gz scalam-6d839c29de8d4d4abd9ead17f6b55a6d13989476.tar.bz2 scalam-6d839c29de8d4d4abd9ead17f6b55a6d13989476.zip |
*move DataSet to plotting package
Diffstat (limited to 'src/main/scala')
10 files changed, 25 insertions, 37 deletions
diff --git a/src/main/scala/scalam/DataSet.scala b/src/main/scala/scalam/DataSet.scala deleted file mode 100644 index 37b15e5..0000000 --- a/src/main/scala/scalam/DataSet.scala +++ /dev/null @@ -1,24 +0,0 @@ -package scalam - -import scalax.file.Path -import breeze.linalg.{Vector, DenseVector} - -case class DataSet(val points: Seq[(Double, Double)], val name: String) { - - def save(path: Path) = { - path.createFile(createParents = true, failIfExists = false) - for (processor <- path.outputProcessor; out = processor.asOutput) - for ((x, y) <- points) out.write(x + " " + y + "\n") - } - - lazy val (xs, ys) = points.unzip match { - case (x, y) => (DenseVector(x: _*), DenseVector(y: _*)) - } - -} - -object DataSet { - - def apply(x: Vector[Double], y: Vector[Double], name: String = "") = new DataSet(x.valuesIterator.toSeq zip y.valuesIterator.toSeq, name) - -}
\ No newline at end of file diff --git a/src/main/scala/scalam/plotting/DataSet.scala b/src/main/scala/scalam/plotting/DataSet.scala new file mode 100644 index 0000000..07813ef --- /dev/null +++ b/src/main/scala/scalam/plotting/DataSet.scala @@ -0,0 +1,17 @@ +package scalam.plotting + +import scalax.file.Path +import breeze.linalg.{ Vector, DenseVector } + +case class DataSet(points: Seq[(Double, Double)], label: String) { + val name = label + + lazy val (xs, ys) = points.unzip + def save(path: Path) = { + path.createFile(createParents = true, failIfExists = false) + for (processor <- path.outputProcessor; out = processor.asOutput) + for ((x, y) <- points) out.write(x + " " + y + "\n") + } + +} + diff --git a/src/main/scala/scalam/plotting/Plot.scala b/src/main/scala/scalam/plotting/Plot.scala index f354997..5caec23 100644 --- a/src/main/scala/scalam/plotting/Plot.scala +++ b/src/main/scala/scalam/plotting/Plot.scala @@ -1,7 +1,6 @@ package scalam.plotting import scala.sys.process._ -import scalam.DataSet import scalam.m.ast._ import scalax.file.Path import scalam.plotting.styles._ @@ -51,7 +50,7 @@ class Plot( Evaluate(Function(plot, params: _*)) } def legend(dataSets: Seq[DataSet]) = - Evaluate(Function(Identifier("legend"), (for (d <- dataSets) yield StringLiteral(d.name)): _*)) :: Nil + Evaluate(Function(Identifier("legend"), (for (d <- dataSets) yield StringLiteral(d.label)): _*)) :: Nil val commands = new scala.collection.mutable.ListBuffer[Statement] commands ++= (for (d <- richDataSets) yield loadData(d)) diff --git a/src/main/scala/scalam/plotting/Plotter.scala b/src/main/scala/scalam/plotting/Plotter.scala index 9292490..cfd7b7e 100644 --- a/src/main/scala/scalam/plotting/Plotter.scala +++ b/src/main/scala/scalam/plotting/Plotter.scala @@ -1,6 +1,5 @@ package scalam.plotting -import scalam.DataSet import scalam.m._ import scalam.m.ast._ import scalam.plotting.styles._ @@ -12,11 +11,8 @@ trait Plotter { lazy val interpreter = new MatlabInterpreter(pwd) - //def plot(dataSets: Seq[DataSet], title: String, x: String, y: String, grid: Boolean = true, legend: Boolean = true)(implicit styles: Seq[Style[_]] = defaultStyles, fontSize: FontSize = defaultFontSize): Plot = - //new Plot(dataSets, title, x, y, grid, legend, styles = styles, fontSize = fontSize.fs) - def plot(dataSets: Seq[DataSet], title: String, x: String, y: String, grid: Boolean = true, legend: Boolean = true)(implicit styles: Seq[Style[_]] = defaultStyles, fontSize: FontSize = defaultFontSize) = { - val p = new Plot(dataSets, title, x, y, grid, legend, styles = styles, fontSize = fontSize.fs) + val p = new Plot(dataSets, title, x, y, grid, legend, styles = styles, fontSize = fontSize.fontSize) p.save() val s = Evaluate(Function(Identifier("run"), StringLiteral((p.directory / p.localPlotFile).path))) //val s = "run '" + (p.directory / p.localPlotFile).path + "'" diff --git a/src/main/scala/scalam/plotting/styles/color/colors.scala b/src/main/scala/scalam/plotting/styles/color/colors.scala index 73fa221..58fcd29 100644 --- a/src/main/scala/scalam/plotting/styles/color/colors.scala +++ b/src/main/scala/scalam/plotting/styles/color/colors.scala @@ -1,7 +1,7 @@ package scalam.plotting.styles.color import scalam.m.ast._ -import scalam.DataSet +import scalam.plotting.DataSet import scalam.plotting.styles.Style import scalam.plotting.styles.StyleElement diff --git a/src/main/scala/scalam/plotting/styles/color/styles.scala b/src/main/scala/scalam/plotting/styles/color/styles.scala index e50f507..a70d5e7 100644 --- a/src/main/scala/scalam/plotting/styles/color/styles.scala +++ b/src/main/scala/scalam/plotting/styles/color/styles.scala @@ -1,7 +1,7 @@ package scalam.plotting.styles.color import scalam.m.ast._ -import scalam.DataSet +import scalam.plotting.DataSet import scalam.plotting.styles.Style import scalam.plotting.styles.StyleElement diff --git a/src/main/scala/scalam/plotting/styles/line/lines.scala b/src/main/scala/scalam/plotting/styles/line/lines.scala index 63c6d23..f0bc24a 100644 --- a/src/main/scala/scalam/plotting/styles/line/lines.scala +++ b/src/main/scala/scalam/plotting/styles/line/lines.scala @@ -4,7 +4,7 @@ import scalam.m.ast._ import scalam.plotting.styles.StyleElement trait Line extends StyleElement { - def name = StringLiteral("LineStyle") + val name = StringLiteral("LineStyle") } case object Solid extends Line {def expression = StringLiteral("-")} diff --git a/src/main/scala/scalam/plotting/styles/marker/markers.scala b/src/main/scala/scalam/plotting/styles/marker/markers.scala index f821396..81ed1fa 100644 --- a/src/main/scala/scalam/plotting/styles/marker/markers.scala +++ b/src/main/scala/scalam/plotting/styles/marker/markers.scala @@ -1,6 +1,6 @@ package scalam.plotting.styles.marker -import scalam.DataSet +import scalam.plotting.DataSet import scalam.m.ast._ import scalam.plotting.styles.Style import scalam.plotting.styles.StyleElement diff --git a/src/main/scala/scalam/plotting/styles/marker/styles.scala b/src/main/scala/scalam/plotting/styles/marker/styles.scala index 9663778..9e80d99 100644 --- a/src/main/scala/scalam/plotting/styles/marker/styles.scala +++ b/src/main/scala/scalam/plotting/styles/marker/styles.scala @@ -1,6 +1,6 @@ package scalam.plotting.styles.marker -import scalam.DataSet +import scalam.plotting.DataSet import scalam.m.ast._ import scalam.plotting.styles.Style import scalam.plotting.styles.StyleElement diff --git a/src/main/scala/scalam/plotting/styles/styles.scala b/src/main/scala/scalam/plotting/styles/styles.scala index 098fcf7..705b88b 100644 --- a/src/main/scala/scalam/plotting/styles/styles.scala +++ b/src/main/scala/scalam/plotting/styles/styles.scala @@ -1,6 +1,6 @@ package scalam.plotting.styles -import scalam.DataSet +import scalam.plotting.DataSet import scalam.m.ast._ |