4

ランドマークまでの距離に対するロボットの信念のプロットを作成しています。X 軸は測定値の数で、Y 軸はランドマークまでの距離です。これには、この推定値の信頼度を示すエラー バーが含まれている必要があります。

分散の値に基づいてプロットに誤差範囲を追加する良い方法を見つけることができませんでした。現在、分散の値を使用して平均に関するサンプルデータを生成することにより、各測定で箱ひげ図を作成しています。これは、計算効率が悪く、表示しようとしている情報の不正確な表現であるため、明らかに理想的ではありません。

これを行う方法についてのアイデアはありますか?理想的には、xy プロット上にあり、JFreeChart コマンドに頼らなくても実行できます。

4

1 に答える 1

2

私はかなり近いものを持っていると思います。まず、グラフ化するランダム データを作成しましょう。

(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 呼び出しを使用せずにこれを回避する方法があるかどうかはわかりません。うまくいけば、誰かがこれを見て、それを修正する方法を教えてくれます. とにかく、それはかなり近いです。

于 2012-05-25T16:25:51.417 に答える