我正在编写一段代码来模拟原子在电场和磁场中的相互作用。这部分要求我在给定高度生成相互作用势的 3D 图。生成这些图的完整代码很长并且分为几个模块,但是相关的绘图部分是:
# Function to plot 'PlotValues' at a height 'z'
def Plot_AtHeight(self, PlotValues, z=500, ReturnFig=False, ShowTime=False):
# Calls out to the relevant function to calculate the values and return
# these as an array
PlotArray = self.Get_AtHeight(PlotValues, z)
pylab.rcParams.update( \
{'axes.labelsize': 18,
'text.fontsize': 18,
'xtick.labelsize': 18,
'ytick.labelsize': 18
})
fig = pylab.figure()
ax = Axes3D(fig)
# Make the arrays of the points at which the values are calculated
X, Y = np.mgrid[Xmin:Xmax:complex(0,Xpoints),
Ymin:Ymax:complex(0,Ypoints)]
ax.plot_surface(X, Y, PlotArray, cmap=cm.jet)
ax.set_xlabel('Position, x (nm)')
ax.set_ylabel('Position, y (nm)')
if PlotValues == 'B': ax.set_zlabel('Field Strength (G)', fontsize=18)
elif PlotValues == 'E': ax.set_zlabel('Field Strength (V/m)', fontsize=18)
elif PlotValues == 'U_Stark': ax.set_zlabel('Stark Interaction (J)', fontsize=18)
elif PlotValues == 'U_Zeeman': ax.set_zlabel('Zeeman Interaction (J)', fontsize=18)
elif PlotValues == 'U': ax.set_zlabel('Interaction Potential (J)', fontsize=18)
elif PlotValues == 'U_Stark_mK': ax.set_zlabel('Stark Interaction (mK)', fontsize=18)
elif PlotValues == 'U_Zeeman_mK': ax.set_zlabel('Zeeman Interaction (mK)', fontsize=18)
elif PlotValues == 'U_mK': ax.set_zlabel('Interaction Potential (mK)', fontsize=18)
# If we are not in a time averaged environment then display the current
# time (in ns) as the title to 1 decimal place.
if not self.TimeAveraged and ShowTime:
TimeStr = str(time*10**9)
try:
TimeTo1dp = '.'.join([TimeStr.split('.')[0], TimeStr.split('.')[1][0]])
except:
TimeTo1dp = TimeStr
ax.set_title("t = %sns" % TimeTo1dp, fontsize=18)
if not ReturnFig: pylab.show()
elif ReturnFig: return fig
返回的图的一个例子是:
你可以看到轴标签和刻度有点乱。特别是,我希望有人知道如何阻止图像在底部被截断(即让所有 1000 个图像都清晰)。我在很多角度都遇到这个问题,有时轴标签被切断,有时是刻度线,但本质上 python 打开以查看和保存绘图的窗口似乎不够大,扩展它会缩放整个图像,因此标签/滴答声仍然被切断。
任何帮助将不胜感激,请不要提及减小字体大小或删除标签,因为这将进入报告,因此这些已修复。
谢谢。
最佳答案
例如,您可以设置绘图的查看“距离”
ax.dist = 13
关于python - 停止 matplotlib 3D 曲面图切断轴标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14748345/
关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestion我想在固定时间创建一系列低音和高音调的哔哔声。例如:在150毫秒时发出高音调的蜂鸣声在151毫秒时发出低音调的蜂鸣声200毫秒时发出低音调的蜂鸣声250毫秒的高音调蜂鸣声有没有办法在Ruby或Python中做到这一点?我真的不在乎输出编码是什么(.wav、.mp3、.ogg等等),但我确实想创建一个输出文件。
我试图使用yard记录一些Ruby代码,尽管我所做的正是所描述的here或here#@param[Integer]thenumberoftrials(>=0)#@param[Float]successprobabilityineachtrialdefinitialize(n,p)#initialize...end虽然我仍然得到这个奇怪的错误@paramtaghasunknownparametername:the@paramtaghasunknownparametername:success然后生成的html看起来很奇怪。我称yard为:$yarddoc-mmarkdown我做错了什么?
这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:Pythonconditionalassignmentoperator对于这样一个简单的问题表示歉意,但是谷歌搜索||=并不是很有帮助;)Python中是否有与Ruby和Perl中的||=语句等效的语句?例如:foo="hey"foo||="what"#assignfooifit'sundefined#fooisstill"hey"bar||="yeah"#baris"yeah"另外,类似这样的东西的通用术语是什么?条件分配是我的第一个猜测,但Wikipediapage跟我想的不太一样。
我有一个div,它根据表单是否正确提交而改变。我想知道是否可以检查类的特定元素?开始元素看起来像这样。如果输入不正确,添加错误类。 最佳答案 试试这个:browser.div(:id=>"myerrortest").class_name更多信息:http://watir.github.com/watir-webdriver/doc/Watir/HTMLElement.html#class_name-instance_method另一种选择是只查看具有您期望的类的div是否存在browser.div((:id=>"myerrortes
什么是ruby的rack或python的Java的wsgi?还有一个路由库。 最佳答案 来自Python标准PEP333:Bycontrast,althoughJavahasjustasmanywebapplicationframeworksavailable,Java's"servlet"APImakesitpossibleforapplicationswrittenwithanyJavawebapplicationframeworktoruninanywebserverthatsupportstheservletAPI.ht
无论您是想搭建桌面端、WEB端或者移动端APP应用,HOOPSPlatform组件都可以为您提供弹性的3D集成架构,同时,由工业领域3D技术专家组成的HOOPS技术团队也能为您提供技术支持服务。如果您的客户期望有一种在多个平台(桌面/WEB/APP,而且某些客户端是“瘦”客户端)快速、方便地将数据接入到3D应用系统的解决方案,并且当访问数据时,在各个平台上的性能和用户体验保持一致,HOOPSPlatform将帮助您完成。利用HOOPSPlatform,您可以开发在任何环境下的3D基础应用架构。HOOPSPlatform可以帮您打造3D创新型产品,HOOPSSDK包含的技术有:快速且准确的CAD
华为OD机试题本篇题目:明明的随机数题目输入描述输出描述:示例1输入输出说明代码编写思路最近更新的博客华为od2023|什么是华为od,od薪资待遇,od机试题清单华为OD机试真题大全,用Python解华为机试题|机试宝典【华为OD机试】全流程解析+经验分享,题型分享,防作弊指南华为o
本教程将在Unity3D中混合Optitrack与数据手套的数据流,在人体运动的基础上,添加双手手指部分的运动。双手手背的角度仍由Optitrack提供,数据手套提供双手手指的角度。 01 客户端软件分别安装MotiveBody与MotionVenus并校准人体与数据手套。MotiveBodyMotionVenus数据手套使用、校准流程参照:https://gitee.com/foheart_1/foheart-h1-data-summary.git02 数据转发打开MotiveBody软件的Streaming,开始向Unity3D广播数据;MotionVenus中设置->选项选择Unit
Unity自动旋转动画1.开门需要门把手先动,门再动2.关门需要门先动,门把手再动3.中途播放过程中不可以再次进行操作觉得太复杂?查看我的文章开关门简易进阶版效果:如果这个门可以直接打开的话,就不需要放置"门把手"如果门把手还有钥匙需要旋转,那就可以把钥匙放在门把手的"门把手",理论上是可以无限套娃的可调整参数有:角度,反向,轴向,速度运行时点击Test进行测试自己写的代码比较垃圾,命名与结构比较拉,高手轻点喷,新手有类似的需求可以拿去做参考上代码usingSystem.Collections;usingSystem.Collections.Generic;usingUnityEngine;u
之前说过10之后的版本没有3dScan了,所以还是9.8的版本或者之前更早的版本。 3d物体扫描需要先下载扫描的APK进行扫面。首先要在手机上装一个扫描程序,扫描现实中的三维物体,然后上传高通官网,在下载成UnityPackage类型让Unity能够使用这个扫描程序可以从高通官网上进行下载,是一个安卓程序。点到Tools往下滑,找到VuforiaObjectScanner下载后解压数据线连接手机,将apk文件拷入手机安装然后刚才解压文件中的Media文件夹打开,两个PDF图打印第一张A4-ObjectScanningTarget.pdf,主要是用来辅助扫描的。好了,接下来就是扫描三维物体。将瓶