2016-09-15 9 views
0

私はPythonで惑星の速度V = sqrt(GM/r)を求めるプロットを生成しようとしています。TypeError:/: 'float'と 'list'のサポートされていないオペランドタイプ

私は「R」のために数百点を生成することができます:

r = range (57909227, 5906440628, 10000000) 

すでに与えられている「R」の最大値と最小値を、使用して私のアプローチはこれです。 GとMの値も与えられる。私のコードは次のようになります。

import sys 
import os 
import numpy 
import matplotlib.pyplot as plt 
from pylab import * 

G=6.67*10**(-11) 
M=2.0*10**30 

radial_distance = range (57909227, 5906440629, 10000000) 




for distance in radial_distance: 
    plt.plot(radial_distance, ((G*M)/distance)**0.5, '*') 
plt.show() 

私に次のエラーを返した:私は、エラーを修正する助けてください

File "generate_list.py", line 20, in <module> 
    plt.plot(radial_distance, ((G*M)/distance)**0.5, '*') 
    File "/home/trina/anaconda2/lib/python2.7/site-packages/matplotlib/pyplot.py", line 3154, in plot 
    ret = ax.plot(*args, **kwargs) 
    File "/home/trina/anaconda2/lib/python2.7/site-packages/matplotlib/__init__.py", line 1812, in inner 
    return func(ax, *args, **kwargs) 
    File "/home/trina/anaconda2/lib/python2.7/site-packages/matplotlib/axes/_axes.py", line 1424, in plot 
    for line in self._get_lines(*args, **kwargs): 
    File "/home/trina/anaconda2/lib/python2.7/site-packages/matplotlib/axes/_base.py", line 386, in _grab_next_args 
    for seg in self._plot_args(remaining, kwargs): 
    File "/home/trina/anaconda2/lib/python2.7/site-packages/matplotlib/axes/_base.py", line 364, in _plot_args 
    x, y = self._xy_from_xy(x, y) 
    File "/home/trina/anaconda2/lib/python2.7/site-packages/matplotlib/axes/_base.py", line 223, in _xy_from_xy 
    raise ValueError("x and y must have same first dimension") 
ValueError: x and y must have same first dimension 

を。

+0

'range'は値のリストを返します。フロートをリスト – Li357

+0

の範囲(1、100、10)で分割することはできません。リスト[1、11、21、31、41、51、61、71、81、91]になります。あなたはフロートとリストを分割できません。実際に何をしようとしていますか? –

+0

私は距離の数百の値を生成し、それらの値をVの関数をプロットするために使用する必要があるので、rの値を生成して関数で使用する最も効率的な方法は何ですか? – bhjghjh

答えて

2

あなたが必要とするのは、リスト上で式を要素ごとに適用し、その結果のリストをプロットすることです。

y = [((G*M)/x)**0.5 for x in radial_distance] 
plt.plot(radial_distance, y) 
関連する問題