C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

No.11581 の関連記事表示

<< 0 | 1 >>
■11581  滑らかな曲線
□投稿者/ くー -(2007/12/18(Tue) 11:38:41)

    分類:[VB.NET/VB2005] 

    計算結果より曲線を描こうと思ってます。
    下のプログラムでは、全ての点を通って曲線を描いてしまいます。
    点を通らなくてもよいので滑らかな曲線(近似曲線)を描きたいと思うのですが、
    分かりません。
    よいアドバイスをお願いします。

    Dim g As Graphics = e.Graphics
    g.PageUnit = GraphicsUnit.Millimeter

    Dim point0 As New Point(40, 249)
    Dim point1 As New Point(50, 257)
    Dim point2 As New Point(60, 254)
    Dim point3 As New Point(70, 246)
    Dim point4 As New Point(80, 236)
    Dim point5 As New Point(90, 222)
    Dim point6 As New Point(100, 205)
    Dim point7 As New Point(110, 186)
    Dim point8 As New Point(120, 163)
    Dim point9 As New Point(130, 137)
    Dim point10 As New Point(140, 108)

    Dim curvePoints As Point() ={point0, point1, point2, point3, point4, point5, _
    point6, point7, point8, point9, point10}

    g.DrawCurve(Pens.Black, curvePoints, 0.4)
親記事 /過去ログ25より / 関連記事表示
削除チェック/

■11583  Re[1]: 滑らかな曲線
□投稿者/ επιστημη -(2007/12/18(Tue) 11:49:37)
>
    指定した点を通らないのは難しいよ。
    "通らなさ加減"を与えないと描けないでしょう。
    たとえば始点と終点を結ぶ直線を引いても近似曲線と言い張ることができますし。

    直線で近似するなら最小自乗法でやれますけども。

記事No.11581 のレス /過去ログ25より / 関連記事表示
削除チェック/

■11590  Re[2]: 滑らかな曲線
□投稿者/ くー -(2007/12/18(Tue) 12:49:26)
    2007/12/18(Tue) 12:51:11 編集(投稿者)


    質問の仕方が不十分で申し訳ありませんでした。
    アドバイスありがとうございました。
    最小自乗法でやってみようと今調べてみてます。
    参考になる所があれば教えてください。
記事No.11581 のレス /過去ログ25より / 関連記事表示
削除チェック/

■11582  Re[1]: 滑らかな曲線
□投稿者/ 774RR -(2007/12/18(Tue) 11:48:19)
    DrawCurve は「指定された点を通る」カーディナルスプラインを描くわけで
    まったくもって仕様どおりの動作をしているわけだが

    「点を通らなくて良い」「滑らかな」というのがどういう仕様なのかわからん。
    それを定義するのが最初の仕事だな
    もしかして最小二乗法で三次曲線近似するとかそー言う話?
記事No.11581 のレス /過去ログ25より / 関連記事表示
削除チェック/

■11584  Re[2]: 滑らかな曲線
□投稿者/ επιστημη -(2007/12/18(Tue) 11:50:22)
>
    ぐは、モロかぶり orz
記事No.11581 のレス /過去ログ25より / 関連記事表示
削除チェック/

■11593  Re[3]: 滑らかな曲線
□投稿者/ 774RR -(2007/12/18(Tue) 13:08:13)
    まずはぐぐれ。話はそれからだ
    っていうか最小二乗法が本当に求める何かかどうかわからんのにアドバイスもないだろう

    最小二乗法がどーいうものかはエクセルで試すといい
    折れ線グラフをつまんで近似曲線の追加だ。
記事No.11581 のレス /過去ログ25より / 関連記事表示
削除チェック/

■11594  Re[4]: 滑らかな曲線
□投稿者/ くー -(2007/12/18(Tue) 13:32:16)
    2007/12/18(Tue) 13:36:56 編集(投稿者)

    No11593 (774RR さん) に返信
    > まずはぐぐれ。話はそれからだ
    > っていうか最小二乗法が本当に求める何かかどうかわからんのにアドバイスもないだろう
    >
    > 最小二乗法がどーいうものかはエクセルで試すといい
    > 折れ線グラフをつまんで近似曲線の追加だ。

    どうもすみませんでした。
    どう質問したらいいのかも分かりませんでした。
    どこからどう始めたらいいのかも分かりませんでした。

    エクセルでやってみます。
記事No.11581 のレス /過去ログ25より / 関連記事表示
削除チェック/

■11598  Re[5]: 滑らかな曲線
□投稿者/ れい -(2007/12/18(Tue) 14:45:59)
    No11581 (くー さん) に返信
    > 点を通らなくてもよいので滑らかな曲線(近似曲線)を描きたいと思うのですが、

    「滑らか」の定義は簡単で、2回微分可能ってことですよね。
    でもそれは近似曲線とは全く関係なくって。

    最尤法でも二乗法でもスプラインでもなんでも滑らかなのは作れますが。
    その点がどういう曲線に載るべきなのか、載せたいのか、
    そこを考えなければ全て意味が無いですよ。
記事No.11581 のレス /過去ログ25より / 関連記事表示
削除チェック/

■11616  Re[6]: 滑らかな曲線
□投稿者/ くー -(2007/12/19(Wed) 10:56:37)
    曲線のイメージをエクセルでやってみました。

    グラフの散布図で、近似曲線を追加し、近似式は多項式近似(次数5)で
    するとイメージ通りのグラフが出来ました。

    0 0.562
    10 0.084
    20 0.112
    30 0.253
    40 0.45
    50 0.703
    60 1.012
    70 1.377
    80 1.798
    90 2.276
    100 2.81

    そこで、表示される式を自分で求めたいのですが分かりません。
    知ってる方がおられましたら教えてください。

記事No.11581 のレス /過去ログ25より / 関連記事表示
削除チェック/

■11617  Re[7]: 滑らかな曲線
□投稿者/ επιστημη -(2007/12/19(Wed) 11:12:50)
>
記事No.11581 のレス /過去ログ25より / 関連記事表示
削除チェック/

■11604  Re[1]: 滑らかな曲線
□投稿者/ Jitta on the way -(2007/12/18(Tue) 19:38:23)
    No11581 (くー さん) に返信
    > 計算結果より曲線を描こうと思ってます。
    > 下のプログラムでは、全ての点を通って曲線を描いてしまいます。
    > 点を通らなくてもよいので滑らかな曲線(近似曲線)を描きたいと思うのですが、
    > 分かりません。
    > よいアドバイスをお願いします。
    >
    > Dim g As Graphics = e.Graphics
    > g.PageUnit = GraphicsUnit.Millimeter


    ミリで指定したら、結構粗くなると思います。
    ここも、要調査かと思います。
記事No.11581 のレス /過去ログ25より / 関連記事表示
削除チェック/

■11618  Re[2]: 滑らかな曲線
□投稿者/ 774RR -(2007/12/19(Wed) 11:24:38)
    うーん。わかっていないような気のせいがする

    近似曲線の式を選ぶってのは厳密な理由があっての話
    「理論式が log だから」
    「理論上偶数次の式とならないから」
    「1次式では誤差が大きいが5次式では計算時間がかかるので、応用上有用な3次式で内挿したいから」
    などなど、根拠が説明できなきゃ式で近似する意味が無い
    この辺はプログラミング以前の話で物理的統計学的話になってくる

    テキトーなデータがあって、それをテキトーに結んでみたら5次式っぽく見える
    って理由で5次式を採用する、なんてことはありえない話
    データが変われば5次式でなく3次式や7次式を採用するわけ?絶対にありえない。

    > その点がどういう曲線に載るべきなのか、載せたいのか、
    > そこを考えなければ全て意味が無いですよ。
    この意味考えた?

    続けるにやぶさかではないが今の状況だとまったく無意味っぽいのでパスさせていただきたく拝承
記事No.11581 のレス /過去ログ25より / 関連記事表示
削除チェック/

■11622  Re[3]: 滑らかな曲線
□投稿者/ れい -(2007/12/19(Wed) 12:03:27)
    No11618 (774RR さん) に返信

    全面的に同意。

    何をしたいのか、きちんと伝わってくるなら、
    各種近似法の簡単な説明をしたり、
    参考文献を紹介することもできますが。
記事No.11581 のレス /過去ログ25より / 関連記事表示
削除チェック/

■11624  Re[4]: 滑らかな曲線
□投稿者/ も -(2007/12/19(Wed) 12:18:07)
    皆さんのご意見を総合すると
    とりあえず数値計算と内挿法でお勉強でしょうかね
記事No.11581 のレス /過去ログ25より / 関連記事表示
削除チェック/

■11626  Re[5]: 滑らかな曲線
□投稿者/ れい -(2007/12/19(Wed) 12:39:01)
    No11624 (も さん) に返信
    > 皆さんのご意見を総合すると
    > とりあえず数値計算と内挿法でお勉強でしょうかね

    私は勉強しろとは言ってません。
    内挿法も数値計算も直接は関係ありませんし、
    おそらくそれを勉強しても意味がありません。

    何をしたいのかがわからないのです。

    「滑らかな曲線(近似曲線)を描きたい」という質問を文字通り解釈するなら
    「2回微分可能な理論曲線を考えて最尤法でフィットしたらよい」となりますが、
    それは求めている回答でないのは明らかでしょう。

    もっと具体的にどういった線を描きたいのかがわかれば、
    私の知ってる情報やそれへのリンクを示すことも可能であると言っています。
記事No.11581 のレス /過去ログ25より / 関連記事表示
削除チェック/

■11631  Re[6]: 滑らかな曲線
□投稿者/ くー -(2007/12/19(Wed) 13:43:07)
    2007/12/19(Wed) 13:45:52 編集(投稿者)

    No11626 (れい さん) に返信
    > ■No11624 (も さん) に返信
    >>皆さんのご意見を総合すると
    >>とりあえず数値計算と内挿法でお勉強でしょうかね
    >
    > 私は勉強しろとは言ってません。
    > 内挿法も数値計算も直接は関係ありませんし、
    > おそらくそれを勉強しても意味がありません。
    >
    > 何をしたいのかがわからないのです。
    >
    > 「滑らかな曲線(近似曲線)を描きたい」という質問を文字通り解釈するなら
    > 「2回微分可能な理論曲線を考えて最尤法でフィットしたらよい」となりますが、
    > それは求めている回答でないのは明らかでしょう。
    >
    > もっと具体的にどういった線を描きたいのかがわかれば、
    > 私の知ってる情報やそれへのリンクを示すことも可能であると言っています。

    どういう線を描きたいのかと言うのを、どう伝えてよいのかわかりません。
    皆さんが納得される回答がわからないんです。
    だから、皆さんにわかるようイメージとしてエクセルで表してみたんですが。
    皆さんのように知識がなくご迷惑かけて本当にすみません。

    x軸が0,10,20・・・100に対してのy軸があります。
    x軸が0,100の点は通り、他は点列の近辺を通るなめらかな
    曲線を描きたいです。(計算結果は必ずエクセルで示したような曲線の形になります)
    DrawCurveでは、少しカクカクの曲線になってしまうので、
    他のよい方法はないかと思いまして。


記事No.11581 のレス /過去ログ25より / 関連記事表示
削除チェック/

■11633  Re[7]: 滑らかな曲線
□投稿者/ れい -(2007/12/19(Wed) 14:21:14)
    No11631 (くー さん) に返信
    > どういう線を描きたいのかと言うのを、どう伝えてよいのかわかりません。

    そこを考えるのもプログラマの仕事・能力の一つです。
    がんばって考えましょう。

    > x軸が0,10,20・・・100に対してのy軸があります。
    > x軸が0,100の点は通り、他は点列の近辺を通るなめらかな

    始点と終点はわかりました。

    > 曲線を描きたいです。(計算結果は必ずエクセルで示したような曲線の形になります)

    ・あなたの言う「なめらか」とはどういう状態ですか?

    2回「なめらか」と言っていますが、同じことを同じように表現しても伝わりません。
    少なくとも私にとっては「滑らかな曲線」とは2回微分可能であること意外の意味を持ちません。
    違う言い方を考えましょう。

    ・なぜ「エクセルで示したような曲線」がよいと思うのですか?

    こっちが本質です。

    私は、くーさんが近似曲線というものを誤解していると思っています。

    ですから、
    > その点がどういう曲線に載るべきなのか、載せたいのか、
    > そこを考えなければ全て意味が無いですよ。
    と言っています。

    より上位の(メタな)問題、たとえば
    「測定器からのデータをグラフ化したい」とか、
    「ベクタデータを表示したい」とか、
    そういったものを聞けば、
    どう考えればよいのか、
    アドバイスできるかもしれません。
記事No.11581 のレス /過去ログ25より / 関連記事表示
削除チェック/

■11635  Re[8]: 滑らかな曲線
□投稿者/ くー -(2007/12/19(Wed) 14:32:15)
    > ■No11631 (くー さん) に返信

    > ・あなたの言う「なめらか」とはどういう状態ですか?
    カクカクしてない、丸みのある曲線です。

    > ・なぜ「エクセルで示したような曲線」がよいと思うのですか?

     エクセルで示した曲線を見せるとこんな感じになるようにと言われたので、
     それに近い曲線をと考えています。
     ただそれだけです。
     入力値からでた計算結果をグラフ化したいです。

記事No.11581 のレス /過去ログ25より / 関連記事表示
削除チェック/

■11637  Re[9]: 滑らかな曲線
□投稿者/ επιστημη -(2007/12/19(Wed) 14:45:49)
>
    >>・あなたの言う「なめらか」とはどういう状態ですか?
    > カクカクしてない、丸みのある曲線です。

    じゃなくてぇ...(涙

    >  エクセルで示した曲線を見せるとこんな感じになるようにと言われたので、
    >  それに近い曲線をと考えています。
    >  ただそれだけです。

    "こんな感じ"を説明してくれんことには、
    それだけじゃわしらにゃなーもわからんて。

    n次多項式近似だとか、そのときnはいくつだとか。
記事No.11581 のレス /過去ログ25より / 関連記事表示
削除チェック/

■11639  Re[10]: 滑らかな曲線
□投稿者/ くー -(2007/12/19(Wed) 14:53:52)
    No11637 (επιστημη さん) に返信
    > >>・あなたの言う「なめらか」とはどういう状態ですか?
    >> カクカクしてない、丸みのある曲線です。
    >
    > じゃなくてぇ...(涙
    >
    >> エクセルで示した曲線を見せるとこんな感じになるようにと言われたので、
    >> それに近い曲線をと考えています。
    >> ただそれだけです。
    >
    > "こんな感じ"を説明してくれんことには、
    > それだけじゃわしらにゃなーもわからんて。
    >
    > n次多項式近似だとか、そのときnはいくつだとか。
    >

    すみません。
    4次多項式近似。
記事No.11581 のレス /過去ログ25より / 関連記事表示
削除チェック/

次の20件>

<< 0 | 1 >>

パスワード/

- Child Tree -