 
 (defn write-radar-display-to-file
   [ds filename & options]
-  (let [{:keys [width height]} (into default-frame-options (apply hash-map options))
+  (let [{:keys [width height title]} (into default-frame-options (apply hash-map options))
         image (BufferedImage. width height BufferedImage/TYPE_INT_RGB)
         image-type (type-from-file filename)]
     (with-antialiasing (.createGraphics image)
-      (draw-radar ds width height))
+      (draw-radar ds width height title))
     (ImageIO/write image image-type (File. filename))))
 
-(def test-data
-     '[("Performance" 1 10)
-       ("Security" 2 5)
-       ("Scalability" 7 10)
-       ("Availability" 8 10)
-       ("Portability" 5 10)
-       ("Modifiability" 3 10)])
 
 (comment
-  (show-radar-display test-data))
+  (def test-data
+    '[("Performance" 1 10)
+      ("Security" 2 5)
+      ("Scalability" 7 10)
+      ("Availability" 8 10)
+      ("Portability" 5 10)
+      ("Modifiability" 3 10)])
+
+  (show-radar-display-in-frame test-data :title "Solution A")
+
+  (write-radar-display-to-file test-data "/tmp/radar.png" :title "Solution A")
+  )

      (.lineTo path x y))
    path))

(def *graphics* nil)
(def *scale* 1.0)
(defn set-color [color] (.setColor *graphics* color))
(defn draw [shape] (.draw *graphics* shape))
(defn fill [shape] (.fill *graphics* shape))

    (draw-labels scale (labels ds))))

(defn make-radar-panel
  [ds width height title]
  (doto
      (proxy [javax.swing.JComponent] []
        (paintComponent [g]
                        (with-antialiasing g
                          (draw-radar ds (.getWidth this) (.getHeight this) title))))))

(defn show-radar-display-in-frame
  "Display a new window with a radar plot of the given data items.
