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

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

ただいまの
回答率

90.75%

  • Python

    6812questions

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

  • Matplotlib

    250questions

    MatplotlibはPythonのおよび、NumPy用のグラフ描画ライブラリです。多くの場合、IPythonと連携して使われます。

pythonのmatplotlibの3Dグラフの描画範囲の指定方法がわかりません。

受付中

回答 0

投稿

  • 評価
  • クリップ 0
  • VIEW 388

harumaki18

score 2

任意の範囲に関する3次元のグラフを作成しています。

発生している問題・エラーメッセージ

set_xlimを用いて範囲指定をした範囲(timeの軸の範囲0.5から)のグラフを描画したいのですが、
添付の図のように
それ以外(0から0.5)の範囲のグラフも描画されています。
ソースコードには色々書いていますが、
主には最後のグラフの描画に問題があると思っています。
どのようにすればいいのでしょうか…

該当のソースコード

import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
import csv
# from scipy.interpolate import interp1d
from scipy import signal, interpolate
from matplotlib import cm
from matplotlib.colors import LinearSegmentedColormap
from mpl_toolkits.mplot3d import Axes3D


shotnumber = 151110014
interval = 0.000001
ch_u = 20 #2014_18 2015_20
ch_d = 19
start = 40
N = 4000
f = open("{}AXUV_upside.csv".format(shotnumber))
data = csv.reader(f)
p = open("impactparameter_32mm_2015_u.txt")
line = p.readlines()
p.close()

calibrate = np.loadtxt("calibration_up_151223.txt")

t = []
y = []
x = []
negative_list = [1,5,6,9,14,15,16,17] #15年
#negative_list = []
for d in data:
    d = list(map(float, d))
    t.append(d[0])
    y.append(d[1:])
y = np.array(y)
t = np.array(t)
y_2 = []
for i in range(ch_u):
    if i in negative_list:
        y_2.append(np.array(y[:,i]*((-1) / calibrate[i]))) # 全データ
    else:
        y_2.append(np.array(y[:, i] * (1 / calibrate[i])))  # 全データ

y_2 = np.array(y_2)
y_2 = y_2.transpose()
for i in range(0, ch_u):
    x.append(float(line[i]))

x = np.array(x)
# ここまで各種読み込み

#delete_list = [13,8]#14年消す
#delete_list = [8,10,12,13]
delete_list = [4,5,8,10,12,13]  # 15年測定結果の消すチャンネル0-19まで
remain_list = [] #壊れているCHなどを省く
for i in range(ch_u):
    if i not in delete_list:
        remain_list.append(i)

x_result = []
for n in range(20):
    x_i = []
    for i in range(6006):
        x_i.append(x[n])
    x_result.append(x_i)
x_result = np.array(x_result)
fig = plt.figure(figsize=(13,13))
fig.patch.set_facecolor('white')

ax = fig.add_subplot(111,projection='3d')
ax.set_xlabel('time{s}')
ax.set_ylabel('impactparameter[m]')
ax.set_zlabel('intensity[a.u.]')
for n in range(ch_u):
    if n in remain_list:
        ax.plot(t, x_result[n,:], y_2[:,n])
ax.set_xlim(0.0005,0.002)
plt.title('#{}_upside'.format(shotnumber))
plt.show()
#plt.savefig("{}_AXUV_upside_3dplot.png".format(shotnumber))[イメージ説明](3071e20a654e57352272274c5d1383f5.png)

試したこと

plt.xlim()も試しています。同様の結果になっています。

補足情報(言語/FW/ツール等のバージョンなど)

python matplotlibを使用

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

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

まだ回答がついていません

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

  • ただいまの回答率 90.75%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

  • 解決済

    matplotlibのplt.draw()を使ってリアルタイムで画像の描画をしたいのですがディスプレ...

    matplotlibで白黒反転するアニメーションを作りたいのですが、下のプログラムを実行してもディスプレイに何も表示されません 下のプログラムをどのように変えたら良いのでしょうか?

  • 解決済

    2次元グラフと3次元散布図のアニメーション付加

    前提・実現したいこと 同一グラフでの静止とアニメーションの付加。(2次元グラフ、3次元散布図) 発生している問題・エラーメッセージ やり方が分からない 該当のソースコード

  • 解決済

    グラフへの自動プロット

    いつもお世話になっております。 前提・実現したいこと プログラム(グラフ)を実行した状態のままCSVファイル(aiueo.csv)に値を追加(削除)した時に実行中のファイルに値

  • 解決済

    pythonの図示 matpotlib

    pythonで四角形が格子状に区切られそれぞれの点に数字が振られています。それをコンターマップのように(ただし、等高線はいらない)図示したいのですがどのように書けばよいでしょうか

  • 解決済

    クラスタ毎の色変更ができません

    前提・実現したいこと クラスタリングの勉強をしています. scikit-learnでクラスタリングしようと思っています. 下記の2つの記事を参考にさせていただいています. こちらの

  • 解決済

    [Python]グラフ表示 matplotlib 構文?

    質問 グラフを表示させたいです。 list_If = calc.calculate(str(y), 1, imp_name)の部分で 別のソフトに値を渡して計算、その後matplo

  • 解決済

    matplotlib contourマップの値の制限とanimation

    import numpy as np import matplotlib.pyplot as plt E=np.zeros((10,10)) for i in range(1,1

  • 解決済

    python棒グラフの順番

     前提・実現したいこと 数値とラベルを持つあるデータをについて、数値でソートして その結果を棒グラフとして出力したいと思っています。  発生している問題・エラーメッセージ ソー

同じタグがついた質問を見る

  • Python

    6812questions

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

  • Matplotlib

    250questions

    MatplotlibはPythonのおよび、NumPy用のグラフ描画ライブラリです。多くの場合、IPythonと連携して使われます。