質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.36%
Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

974閲覧

データの形に沿った曲線を書きたい

hyt

総合スコア2

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2021/11/11 06:02

編集2021/11/11 06:14

##データを生成しグラフに描画

import numpy as np import matplotlib.pyplot as plt x=np.random.normal(0,2,1000).reshape(-1,1) y=np.sin(x) lin=LinearRegression() lin.fit(x,y) fig=plt.figure(figsize=(12,8)) plt.scatter(x,y) plt.plot(x,lin.predict(x))  ##本来はデータを分けて予測しますが、今回は全データ突っ込んでるので、雰囲気だけで回帰直線 plt.plot(x,np.sin(x)) ``` ###わからないこと これを実行してもらうとわかると思うのですが、グラフはM字の形をしています。 よって、赤線か青線でも構わないのですが、M字に沿った曲線を書きたいのですが、これを実行すると全てのデータが直線でつながってしまい大変なことになってしまいます。 ###書きたいグラフ ![![イメージ説明](760534ceb04f33584a380a12fde53a19.png)説明](7b43645d3c5a93fb3fc05b5dadb5c37b.png)](1c0138ceeab9f04a5d33ac2440748efe.png)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

melian

2021/11/11 06:31

x がソートされていない事が原因ですので、plt.scatter(x,y) の直後に x = sorted(x) を入れてみてはどうでしょうか。
hyt

2021/11/11 07:08

なるほど!!乱数を発生させててるので順番通りではないのですね!!やってみたら解決しました! ありがとうございます
guest

回答1

0

ベストアンサー

ベジエ曲線、とかスプライン曲線、というやつですね。
ぐぐれば解説が出てきます。

投稿2021/11/11 06:42

y_waiwai

総合スコア88024

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hyt

2021/11/11 07:09

乱数を発生させているのでx = sorted(x)で解決できました。 上記の単語もありがとうございます
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問