Ticket #18518

対数表示したときに抜け落ちる点がある

Open Date: 2009-09-02 16:31 Last Update: 2010-11-24 10:18

Reporter:
Owner:
Type:
Status:
Closed
Component:
(None)
MileStone:
(None)
Priority:
5 - Medium
Severity:
5 - Medium
Resolution:
Fixed
File:
1

Details

軸を対数表示に設定したときに、表示されるべき点が抜け落ちてしまう場合がある。

下記の手続きで再現可能である。

1.以下の内容のデータファイルを作成する。

   0.0, 1.0

   1.0, 0.75

   2.0, 0.25

   3.0, -1.0

   4.0, 0.25

   5.0, 0.75

   6.0, 1.0

   7.0, 0.8

2.Samurai Graph に上記1で作成したデータファイルを読み込ませて、スカラー型XYグラフを描画する。後で不具合の確認をしやすくするために、データのプロパティ設定ダイアログを用いて、グラフは折れ線とシンボルの両方を描画するように設定する。

3.プロパティダイアログやマウス操作などを用いて、グラフのY軸の範囲を正の値の範囲(例えば [0.1, 1.0] など)に変更する。

4.グラフのY軸のスケールを対数スケールに設定する。この設定により、Y軸の値が -1.0 の点はスキップされて、3個の点から成る折れ線1本と、4個の点から成る折れ線1本とが描画されるはずである。しかし、3個の点から成る折れ線の一部が表示されていないことが分かる。(シンボルだけが描画された、孤立した点が存在している。)

Ticket History (3/7 Histories)

2009-09-02 16:31 Updated by: kuromaru
  • New Ticket "対数表示したときに抜け落ちる点がある" created
2009-09-02 16:35 Updated by: kuromaru
  • File export.png (File ID: 3792) is attached
2009-09-02 16:49 Updated by: kuromaru
  • Details Updated
2009-09-02 16:49 Updated by: kuromaru
  • File export.png (File ID: 3792) is deleted
2009-09-02 16:54 Updated by: kuromaru
  • Resolution Update from None to Fixed
Comment

折れ線の描画要素のクラスの中で行われる処理の、条件式に誤りがありました。

軸が対数スケールの場合には値が負の点はスキップされますが、スキップ処理によって折れ線は複数に分割されます。

そのような場合、複数の折れ線を描画する処理を行う必要がありますが、条件式の誤りのせいで、分割後の折れ線が3個の点から成る場合のみ、その一部が表示されないという不具合が発生していました。

条件式を修正して、分割後の折れ線が3個の点から成る場合でも、全ての点を考慮して描画を行うように修正しました。

修正したソースコードはCVSにコミット済みです。

2010-11-24 10:18 Updated by: kuromaru
  • Ticket Close date is changed to 2010-11-24 10:18
  • Status Update from Open to Closed
Comment

バージョン 2.0.0 のリリースに伴い close します。

Attachment File List

  • export.png(7KB)
    • バグを再現した状態のキャプチャ画像です。

Edit

You are not logged in. I you are not logged in, your comment will be treated as an anonymous post. » Login