python - 用python绘制电容器板之间的电子偏转

标签 python python-3.x matplotlib physics

我想绘制电子的偏转,当我编译程序时它没有显示任何图形。 这是我到目前为止的代码,注释代表 SI 单位。

import matplotlib.pyplot as plt

v=25300000 # m/s
E=1000 # V/m
d=10 # m
m=9*pow(10,-31) #kg 
q=1.6*pow(10,-19) # C

for i in range(0,d):
  y=(q*E*i*i)/(2*m*v*v)
  plt.plot(i,y)

plt.xlabel("x")
plt.ylabel("y")
plt.show()

最佳答案

plt.plot 需要多个点(除非您指定标记),因此

plt.plot(i,y)

iy是单独的值时,仅当它们是数组或类似数组的对象时,才不会生成图表。您可以将其替换为 plt.scatter,

import matplotlib.pyplot as plt

v=25300000 # m/s
E=1000 # V/m
d=10 # m
m=9*pow(10,-31) #kg 
q=1.6*pow(10,-19) # C

for i in range(0,d):
  y=(q*E*i*i)/(2*m*v*v)
  plt.scatter(i,y)

plt.xlabel("x")
plt.ylabel("y")
plt.show()

这会给你

enter image description here

或者创建 yx 值的列表,

y = []
x = []
for i in range(0, d):
    y.append((q*E*i*i)/(2*m*v*v))
     x.append(i)

plt.plot(x,y)

或者,更好的是,使 xy numpy 数组:

import numpy as np
# ...
x = np.arange(0,10)
y = (q*E*x**2)/(2*m*v*v)
plt.plot(x,y)

其中任何一个都会给你

enter image description here

关于python - 用python绘制电容器板之间的电子偏转,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59813726/

相关文章:

python - Mac OS X Lion Python Ctype CDLL 错误 lib.so.6 : image not found

python - 为什么父进程的标准输入在关闭 fork 子进程的标准输入文件描述符后仍然接受输入?

python - 如何循环打印 2 个不同文本文件中的第 1 行,然后打印第 2 行

python - matplotlib 中的 figsize 大小调整不一致

python - 显示出现频率的标记颜色

Python 可能的列表理解

python - 在 Python 3 中使用不同类型按键对字典列表进行排序

python - 减少箱线图 matplotlib 内的空间

python - 仅当另一个文件夹中不存在子文件夹和文件时,才从一个文件夹复制子文件夹和文件

python-3.x - Python - 基于 LSTM 的 RNN 需要 3D 输入?