私はかなり近いものを持っていると思います。まず、グラフ化するランダム データを作成しましょう。
(def y (for [i (range 20)] (rand-int 100)))
user> (11 14 41 33 25 71 52 34 83 90 80 35 81 63 94 69 97 92 4 91)
次に、プロットを作成します。使用できますxy-plot
が、私はより良い外観が好きscatter-plot
です。
(def plot (scatter-plot (range 20) y))
(view plot)
それは私に次のプロットを与えます
ここで、点 (x,y) を取り、エラー バーの下限と上限のベクトルを返す関数を定義する必要があります。y 値の上下 5% を計算する単純なものを使用します。
(defn calc-error-bars [x y]
(let [delta (* y 0.05)]
[(- y delta) (+ y delta)]))
今、このような関数map
を使用して、データのセットに対してその関数を使用していadd-lines
ます...
(map #(add-lines plot [%1 %1] (calc-error-bars %1 %2)) (range 20) y)
これにより、次のプロットが得られます。
主な問題は、すべてのバーの色が異なることです。JFreeChart 呼び出しを使用せずにこれを回避する方法があるかどうかはわかりません。うまくいけば、誰かがこれを見て、それを修正する方法を教えてくれます. とにかく、それはかなり近いです。