aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/scalam/plotting
diff options
context:
space:
mode:
authorJakob Odersky <jodersky@gmail.com>2012-11-01 13:01:29 +0100
committerJakob Odersky <jodersky@gmail.com>2012-11-01 13:01:29 +0100
commit2dfddf1c5f8f43d32a1a60af4263f5b338c15bd0 (patch)
treec5a8adbbdda55554e5f4f88f0add78dbf3308bc5 /src/main/scala/scalam/plotting
parentcde13945605fb9f543cfb960728c5c7d48d6f3f5 (diff)
downloadscalam-2dfddf1c5f8f43d32a1a60af4263f5b338c15bd0.tar.gz
scalam-2dfddf1c5f8f43d32a1a60af4263f5b338c15bd0.tar.bz2
scalam-2dfddf1c5f8f43d32a1a60af4263f5b338c15bd0.zip
add default dataset name check
Diffstat (limited to 'src/main/scala/scalam/plotting')
-rw-r--r--src/main/scala/scalam/plotting/DataSet.scala11
-rw-r--r--src/main/scala/scalam/plotting/Plot.scala6
2 files changed, 12 insertions, 5 deletions
diff --git a/src/main/scala/scalam/plotting/DataSet.scala b/src/main/scala/scalam/plotting/DataSet.scala
index 768189c..31e65c7 100644
--- a/src/main/scala/scalam/plotting/DataSet.scala
+++ b/src/main/scala/scalam/plotting/DataSet.scala
@@ -1,12 +1,13 @@
package scalam.plotting
+import scalam.m.ast.Identifier
import scalax.file.Path
import breeze.linalg.{ Vector, DenseVector }
-case class DataSet(points: Seq[(Double, Double)], label: String) {
- val name = scalam.m.ast.Identifier(label).toValid.name
+case class DataSet(points: Seq[(Double, Double)], label: String, name: String) {
lazy val (xs, ys) = points.unzip
+
def save(path: Path) = {
path.createFile(createParents = true, failIfExists = false)
for (processor <- path.outputProcessor; out = processor.asOutput)
@@ -15,3 +16,9 @@ case class DataSet(points: Seq[(Double, Double)], label: String) {
}
+object DataSet {
+
+ def apply(points: Seq[(Double, Double)], label: String) = new DataSet(points, label, Identifier.makeValid(label))
+
+}
+
diff --git a/src/main/scala/scalam/plotting/Plot.scala b/src/main/scala/scalam/plotting/Plot.scala
index 3c96a22..45d755e 100644
--- a/src/main/scala/scalam/plotting/Plot.scala
+++ b/src/main/scala/scalam/plotting/Plot.scala
@@ -116,12 +116,12 @@ object Plot {
import scala.util.Random
val data = for (i <- 0 until length) yield (i * 1.0, Random.nextDouble() * 10)
val name = "a"
- new DataSet(data, name)
+ DataSet(data, name)
}
val ds = Seq(
- new DataSet(Seq((0.0, 1.0), (1.0, 1.0), (2.0, 1.0), (3.0, 0.0), (4.0, 1.0), (5.0, 1.0)), "temperature"),
- new DataSet(Seq((0.0, 0.0), (1.0, 1.0), (2.0, 4.0), (3.0, 9.0)), """\alpha""")) ++ (0 to 10).map(_ => randomDataSet(10))
+ DataSet(Seq((0.0, 1.0), (1.0, 1.0), (2.0, 1.0), (3.0, 0.0), (4.0, 1.0), (5.0, 1.0)), "temperature"),
+ DataSet(Seq((0.0, 0.0), (1.0, 1.0), (2.0, 4.0), (3.0, 9.0)), """\alpha""")) ++ (0 to 10).map(_ => randomDataSet(10))
val test = new Plot(ds, "title", "x", "y")