python三维图如何标注曲面_(python)使用colormap作为第4维,x,y,z函数绘制3d曲面 - python...
我正在尝试绘制3d曲面,其中三个维度中的每个维度都在单独的值数组中,并且每个坐标处的曲面着色是x,y,z的函数。一种numpy.pcolormesh,但是是4D而不是3D的。
3D图由下式给出:
from mpl_toolkits.mplot3d import Axes3D
from matplotlib import cm
fig = plt.figure()
ax = fig.gca(projection='3d')
x = np.logspace(-1.,np.log10(5),50)
y = np.linspace(6,9,50)
z = np.linspace(-1,1,50)
colors = LikeBeta(y,range(50),range(50))
ax.plot_trisurf(x,y,z,cmap=colors,linewidth=0.2)
哪里
def LikeBeta(rho0,r0,beta):
M0 = 10**rho0*r0_array[r0]**3
I = cst*M0*sigma_los_beta[beta,:,r0]
S = dv**2+I
res = (np.log(S) + (v-u)**2/S).sum()
return res/2.
cmap=colors可能是错误的,但是问题出在其他地方。我收到以下错误:
----> 8 colors = LikeBeta(y,range(50),range(50))
----> 4 I = cst*M0*sigma_los_beta[beta,:,r0]
ValueError: operands could not be broadcast together with shapes (50,) (50,353)
实际上,sigma_los_beta是我单独求值的数组,形状为(50,353,50),而那些353是我必须拥有的数据。
如何将该函数转换为与plot_trisurf的其他条目兼容的形式?
抱歉,但是我无法提供最少的工作代码,因为dv,v和u是数据。
非常感谢您的帮助。干杯
参考方案
This答案解决了4d表面绘图问题。它使用matplotlib的plot_surface函数而不是plot_trisurf。
基本上,您希望将x,y和z变量重塑为相同尺寸的2d数组。要将第四个尺寸添加为颜色图,必须提供另一个与尺寸轴变量尺寸相同的二维数组。
以下是3d图的示例代码,其色图与x值相对应。 facecolors参数用于根据您的喜好更改颜色图。请注意,它的值是从to_rgba()类中的matplotlib.cm.ScalarMappable函数获取的。
import matplotlib
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
import numpy as np
# domains
x = np.logspace(-1.,np.log10(5),50) # [0.1, 5]
y = np.linspace(6,9,50) # [6, 9]
z = np.linspace(-1,1,50) # [-1, 1]
# convert to 2d matrices
Z = np.outer(z.T, z) # 50x50
X, Y = np.meshgrid(x, y) # 50x50
# fourth dimention - colormap
# create colormap according to x-value (can use any 50x50 array)
color_dimension = X # change to desired fourth dimension
minn, maxx = color_dimension.min(), color_dimension.max()
norm = matplotlib.colors.Normalize(minn, maxx)
m = plt.cm.ScalarMappable(norm=norm, cmap='jet')
m.set_array([])
fcolors = m.to_rgba(color_dimension)
# plot
fig = plt.figure()
ax = fig.gca(projection='3d')
ax.plot_surface(X,Y,Z, rstride=1, cstride=1, facecolors=fcolors, vmin=minn, vmax=maxx, shade=False)
ax.set_xlabel('x')
ax.set_ylabel('y')
ax.set_zlabel('z')
fig.canvas.show()
我引用的答案(和其他答案)提到您应该标准化第四维数据。似乎可以像我在代码示例中所做的那样,通过显式设置颜色图的限制来避免这种情况。
Python GPU资源利用 - python
我有一个Python脚本在某些深度学习模型上运行推理。有什么办法可以找出GPU资源的利用率水平?例如,使用着色器,float16乘法器等。我似乎在网上找不到太多有关这些GPU资源的文档。谢谢! 参考方案 您可以尝试在像Renderdoc这样的GPU分析器中运行pyxthon应用程序。它将分析您的跑步情况。您将能够获得有关已使用资源,已用缓冲区,不同渲染状态上…Python:图像处理可产生皱纹纸效果 - python
也许很难描述我的问题。我正在寻找Python中的算法,以在带有某些文本的白色图像上创建皱纹纸效果。我的第一个尝试是在带有文字的图像上添加一些真实的皱纹纸图像(具有透明度)。看起来不错,但副作用是文本没有真正起皱。所以我正在寻找更好的解决方案,有什么想法吗?谢谢 参考方案 除了使用透明性之外,假设您有两张相同尺寸的图像,一张在皱纹纸上明亮,一张在白色背景上有深…Matplotlib-固定x轴缩放比例和自动缩放y轴 - python
我只想绘制部分数组,固定x部分,但让y部分自动缩放。我尝试如下所示,但是它不起作用。有什么建议么?import numpy as np import matplotlib.pyplot as plt data=[np.arange(0,101,1),300-0.1*np.arange(0,101,1)] plt.figure() plt.scatter(da…Python uuid4,如何限制唯一字符的长度 - python
在Python中,我正在使用uuid4()方法创建唯一的字符集。但是我找不到将其限制为10或8个字符的方法。有什么办法吗?uuid4()ffc69c1b-9d87-4c19-8dac-c09ca857e3fc谢谢。 参考方案 尝试:x = uuid4() str(x)[:8] 输出:"ffc69c1b" Is there a way to…Python:无法识别Pip命令 - python
这是我拍摄的屏幕截图。当我尝试在命令提示符下使用pip时,出现以下错误消息:pip无法识别为内部或外部命令,可操作程序或批处理文件。我已经检查了这个线程:How do I install pip on Windows?我所能找到的就是我必须将"C:\PythonX\Scripts"添加到我的类路径中,其中X代表python版本。如您在我的…
python三维图如何标注曲面_(python)使用colormap作为第4维,x,y,z函数绘制3d曲面 - python...相关推荐
- python三维图如何标注曲面_Matplotlib:Python三维绘图
1.创建三维坐标轴对象Axes3D 创建Axes3D主要有两种方式,一种是利用关键字projection='3d'来实现,另一种是通过从mpl_toolkits.mplot3d导入对象Axes3D来实 ...
- python三维图能画地图_使用Python绘制地图的三大秘密武器
原标题:使用Python绘制地图的三大秘密武器 Python地图可视化库有大家熟知的pyecharts.plotly.folium,还有稍低调的bokeh.basemap.geopandas,也是地图 ...
- Matplotlib 绘制 3D 曲面动画
Matplotlib 绘制 3D 曲面动画 本文介绍如何使用 Python 中的 Matplotlib 库来绘制动态的 3D 曲面.示例如下: 环境 macOS 11.6 python 3.8 数据 ...
- python 三维图直方图_Python | 阶梯直方图
python 三维图直方图 A histogram is a graphical technique or a type of data representation using bars of di ...
- python x y z 1_Python下的数值列表 - range(x,y,z)函数
本文讨论Python下的数值列表 - range(x,y,z)函数的应用,并分析其计数过程. 本文节选自作者的<Python编程基础及应用>视频教程.Python编程基础及应用_哔哩哔哩 ...
- python三维图的坐标_六维图见过么?Python 画出来了
作者 | Prasad Ostwal 译者 | 高级农民工 我们的大脑通常最多能感知三维空间,超过三维就很难想象了.尽管是三维,理解起来也很费劲,所以大多数情况下都使用二维平面. 来自维基百科 不过, ...
- python三维图的坐标_用Python 画个六维图,涨姿势了
关注后你就是我的人了 我们的大脑通常最多能感知三维空间,超过三维就很难想象了.尽管是三维,理解起来也很费劲,所以大多数情况下都使用二维平面. 来自维基百科 不过,我们仍然可以绘制出多维空间,今天就来用 ...
- python三维图视角旋转_如何在python中旋转3d图? (或作为动画)使用鼠标旋转三维视图...
我有这段代码,其中包含一个3D图.我在Spyder中运行代码;我想知道是否可以使这个绘图旋转(360度)并保存. 谢谢! P.s.对不起,如果这是一个愚蠢的问题,但我是Python的newby.如何在 ...
- python三维图怎么显示_如何在python中绘制多个回归3D图
我不是科学家,所以请假设我不知道有经验的程序员的行话,或者科学绘图技术的复杂性. Python是我所知道的唯一语言(初学者,也许是中级). 任务:将多元回归的结果(z = f(x,y))绘制为3D图形 ...
最新文章
- 用了3年Apollo,这次我选择了Nacos,原因不多说了
- 第五天2017/04/06(上午:文件的“读写操作”)
- [leetcode-515-Find Largest Value in Each Tree Row]
- 解决ADB server didn't ACK问题,连上手机问题
- Intellij IDEA中maven更新不下来pom中的jar包,reimport失效
- WinUI 3 Preview 3 发布了,再一次试试它的性能
- 【Spark】扩展Spark Catalyst,打造自定义的Spark SQL引擎
- springcloud工作笔记097---idea集成Mapper接口点击后自动跳转到对应的xml文件中
- 一个 ARK工具: XueTr类似ICEWORLD
- 网站性能优化小结和spring整合redis
- PKMS的queryIntentActivities分析
- Android11新版本,一加8系列喜提Android11稳定版更新
- 8Manage助力花安堂打造新品研发项目管理平台
- 主动轮廓模型——Snake分割算法 matlab源码
- 经纬度距离计算小工具_一个NB工具大合集打网站,总有一款是你需要的
- Hibernate Criteria的 Criterion,Projection,Restrictions等条件设置
- android环信透传,环信高级篇-透传和拓展
- 程序员有话说,只务正业就够了吗?
- python字符串设置字体_[4] Python字符串
- 用户需知:ComingChat的现在和未来——深度解析