我想将光子计数数据数字化(=细胞平均)成一个网格给出的像素,它告诉我们它们是如何对齐的。光子计数数据被存储在2D阵列中。我想把数据分成单元格,每个单元格对应一个像素。这个想法基本上与将高清图像更改为较小的分辨率相同。我想用Python来实现这一点。 我写的数字化函数: import numpy as np
def digitize(function_data, grid_shape):
"""
function_data = 2D array of function values of some 3D shape,
eg.: exp(-(x
我试图构建一些简单的运算,比如一个导数和积分函数来操作lambda函数,因为渐近和was都在努力地集成一些我传递给它们的东西。
导数函数没有给出任何问题,而是在绘制时返回输入函数的导数,但积分函数不返回,也没有绘制输入的正确积分。
import matplotlib.pyplot as plt
import numpy as np
from phys_func import func
sr = [-10,10]
x = np.linspace(sr[0],sr[1], 100)
F = lambda x: x**2
f = func.I(F,x)
plt.plot(x,F(x), lab
我已经编写了生成具有固定半径的圆柱体的代码:
import numpy as np
from matplotlib import pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
from math import sin, cos, pi
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
theta = np.linspace(-2*pi,2*pi, 600)
Z = np.linspace(0,1,700)
Z,theta = np.mes
我一直在努力用matlab来评估一个函数。我要我的x向量从0到1000,y向量从0到125。他们俩的长度都应该是101。要求的方程是z(x,y) = a_y + b_x,其中有a=10和b=20。
a = 10;
b = 20;
n = 101;
dx = 10; % Interval length
dy = 1.25;
x = zeros(1,n);
y = zeros(1,n);
z = zeros(n,n);
for i = 1:n;
x(i) = dx*(i-1);
y(i) = dy*(i-1);
for j = 1:n;
z(i,j) =
我正在尝试在Matlab语言的3D cylindrical coorindates中定义一个函数,然后将其转换为3D笛卡尔,用于绘图目的。 ? 例如,如果我的函数只依赖于径向坐标r(为了简单起见,假设是线性的),我可以绘制一个值为f= 70的3D等值面,如下所示: x = linspace(-10,10,100);
y = linspace(-10,10,100);
z = linspace(-2,2,100);
[X,Y,Z] = meshgrid(x,y,z);
R = sqrt( X.^2 + Y.^2 ); % Calculate the radius for each [
我需要绘制cos函数并在图上选择一个n点。
我绘制了一个cos函数
x = -pi:0.01:pi;
y=cos(x);
plot(x,y)
因此,我得到了一个cos-图和一组(x,y)。如何定义,例如,在此函数上的4个点?
我想用y定义一个向量,并使用randi(y)和循环定义y的n数。
for i = 1:n
ind = randperm(numel(y), 1);
r(i) = y(ind);
end
它给了我一个随机的选择点。但是我需要从两边定义相等的点数,如果点的数目应该是偶数,如果它是奇数,则有一个点在中心。
例如:如果我选择4分,2分将在左边,2个在右边。如果点
我想创建一个函数,它将范围为0,1的数字放入一个bin中,其中n是bin的数量,边界是相对于中点定义的。
0.0 >= Bin 1 <= 0.2 <- outer left bin
0.2 > Bin 2 <= 0.4
0.4 > Bin 3 < 0.6 <- middle bin
0.6 >= Bin 4 < 0.8
0.8 >= Bin 5 <= 1 <- outer right bin
我认为我可以做到以下几点:
def fractile(x, n):
bins = np.linspace(0
我有3份数据。这是x和y值,以及每个xy点的温度值。我想画出每个点,然后插值点之间的面积,得到一个连续的曲面。我的问题是指定温度值。我无法让它与相同数量的x,y和z(温度)值一起工作,我可以在网上找到的所有例子都可以使用x和y的函数来创建z,或者对xy网格上的每个点都有z值。有什么简单的方法吗?
import numpy as np
import matplotlib.pyplot as plt
fig, axs = plt.subplots()
x = np.linspace(0, 1, 100)
y = np.linspace(0,1,100)
X, Y = np.meshgrid(x
我想生成一个类似以下链接的图表
对安装的python库进行计算后生成的图形。我希望这条线是平滑的,类型为cspline gnuplot。
值E_ads=234.4211、E_dis=0.730278和E_reac=-0.8714
有人能帮我吗?
from ase import *
from ase.calculators.jacapo import *
import Gnuplot as gp
# -- Read in all energies
datadict = {'H2O' :'water.nc',
'Pt' :&
我是python的新手,在使用linspace例程绘制高斯函数图时遇到了麻烦。(我不想使用numpy)。
"""plot a normalized gaussian function
"""
from matplotlib import pyplot as mp
import math
def linspace(a,b,n):
if n==1:
yield b
return
d=(b-a)/(n-1)
for i in range(n):
yield a+d*i
def
我正在使用一个需要NumPy的包。到目前为止,它工作得很好。但是今天,由于扩展我的代码,我需要最新版本的NumPy。旧的版本是17左右,我安装了最新的版本。在那之后,我将面临下面提到的问题
File "C:\Users\AppData\Local\Programs\Python\Python38-32\lib\site-packages\numpy\core\function_base.py", line 119, in linspace
raise TypeError(
TypeError: object of type <class 'numpy.flo