我在matlab中生成了以下表面图:

我需要在.NET中创建它.我希望使用IronPython来做到这一点.但首先我只想尝试用Python创建绘图(PyLab).这是我到目前为止:

请看看我的代码并告诉我如何让python显示黑色边缘线.当我添加facecolors=UWR(heatmap)属性时,它们似乎消失了surf(...).这是mplot3d中的错误还是设计?无论哪种方式,我如何让线路回来?
这是我的代码(大数据矩阵的道歉):
from mpl_toolkits.mplot3d import Axes3D
from matplotlib import cm
from matplotlib.ticker import LinearLocator, FormatStrFormatter
import matplotlib.pyplot as plt
import matplotlib
from pylab import *
import numpy as np
fig = plt.figure()
ax = fig.gca(projection='3d')
#Sample colour data
heatmap = np.array([(0.304, 0.288, 0.284, 0.26, 0.248, 0.224, 0.204, 0.184, 0.18, 0.18, 0.156, 0.148, 0.144, 0.136, 0.136, 0.128, 0.124, 0.124, 0.128, 0.124, 0.124),
(0.356, 0.348, 0.332, 0.328, 0.308, 0.292, 0.288, 0.272, 0.252, 0.232, 0.216, 0.204, 0.16, …Run Code Online (Sandbox Code Playgroud) 函数可以定义为@(x) x^.2(例如)
但是在这种情况下,我们有一个函数,在不同的时间间隔上采用不同的表示形式, if abs(x)<3 fun = x^.2 else 0
我们如何使用相同的方式(我的意思是使用@(x))来定义这样的函数.
我正在尝试设置版本控制软件,目前我单独工作(但我希望能够改变),并且我想将代码存储在经常备份的网络驱动器上但是在笔记本电脑的硬盘驱动器上使用相同的代码.
但GIT让我很困惑!
因此,根据我的理解,我应该在笔记本电脑上创建个人存储库,然后将其推送或克隆到网络驱动器上的新中央存储库.这听起来不错吗?这是通过推送还是克隆完成的?
我正在使用GIT-Extensions,他们有关于中央存储库的说法:
中央存储库仅包含版本历史记录.由于中央存储库没有工作目录,因此无法在中央存储库中签出修订.在中央存储库中合并或提取更改也是不可能的.此存储库类型可用作公共存储库,开发人员可以将更改推送到或从中提取更改.
所以这听起来像普通的SVN存储库?因为我可以从中获取代码并向其发送代码,但它不能从我那里获取代码并强制代码在我身上?听起来不错吗?
但如果这是正确的,那么根据这个答案中的图表:"git commit"和"git push"之间有什么区别?我的两个存储库会是什么?它们是工作区和本地仓库,还是本地和远程回购?这是什么决定我应该提交和检查或推拉?
我有一个A任意尺寸mx 的矩阵,n并希望用一个等式填充它,例如,对于每个元素a_ij A,i = 1,...,m和j = 1,...,n,我想,
a_ij = i ^ 2 + j ^ 2.
在手动填写的Matlab中,它看起来与此类似,
A = [1^2+1^2, 1^2+2^2, ..., 1^2+j^2, ..., 1^2+n^2;
2^2+1^2, 2^2+2^2, ..., 2^2+j^2, ..., 2^2+n^2;
.
.
.
i^2+1^2, i^2+2^2, ..., i^2+j^2, ..., i^2+n^2;
.
.
.
m^2+1^2, m^2+2^2, ..., m^2+j^2, ..., m^2+n^2]
Run Code Online (Sandbox Code Playgroud)
所以前几个术语是:
[2, 5, 10,17,...
5, 8, 13,20,...
10,13,18,25,...
17,20,25,32,...
]
Run Code Online (Sandbox Code Playgroud) 我试图将结构数组传递给另一个没有成功.
s(1).f = (1:3);
s(2).f = (4:6);
s(3).f = (7:9);
q(1).n = 'nameA';
q(2).n = 'nameB';
q(3).n = 'nameC';
q(3).f = [];
q.f = s.f
Run Code Online (Sandbox Code Playgroud)
n不应修改该字段.
我错过了什么吗?
在以前的程序中,我从这样的 csv 文件中读取数据:
AllData = np.genfromtxt(open("PSECSkew.csv", "rb"),
delimiter=',',
dtype=[('CalibrationDate', datetime),('Expiry', datetime), ('B0', float), ('B1', float), ('B2', float), ('ATMAdjustment', float)],
converters={0: ConvertToDate, 1: ConvertToDate})
Run Code Online (Sandbox Code Playgroud)
我现在正在编写一个非常相似的程序,但这次我想获得一个非常相似的数据结构AllData(除了这次浮点数将全部在一个 csv 字符串中)但是来自 SQL Server 而不是一个 csv 文件。最好的方法是什么?
pyodbc看起来涉及使用很多我不熟悉并希望避免的游标。我只想运行查询并以上述结构(或像 C# 中的 DataTable)获取数据。
在Matlab中,我想创建一个二维数组.但是,我无法创建矩阵,因为行的长度都不同.
我是Matlab的新手,我通常会在C++中通过创建指针数组来实现这一点,每个指针都指向自己的数组.
我应该如何在Matlab中做到这一点?谢谢.
我正在按照本教程进行操作:http : //msdn.microsoft.com/zh-cn/library/zt39148a( v= vs.110).aspx以创建Windows服务。我有一个名为的类TaskManager,它使用Quartz.Net管理大量工作。它具有.Go()(不阻塞)和.Stop()方法。如果我理解正确,那么我要做的就是
private TaskManager _taskManager;
public DataPumpService()
{
InitializeComponent();
_taskManager = new TaskManager();
}
protected override void OnStart(string[] args)
{
_taskManager.Go();
}
protected override void OnStop()
{
_taskManager.Stop();
}
Run Code Online (Sandbox Code Playgroud)
但是,本教程随后一节将介绍如何设置服务状态。它并没有真正解释什么是服务状态或何时要设置它。TaskManager.Stop()可能需要花费几秒钟才能完成(内部调用IScheduler.Interrupt()所有作业,然后调用IScheduler.Shutdown(true))。那我应该设置状态吗?如果是这样,那么假设我将代码包含在本教程的“设置服务状态”部分的(1),(2)和(3)部分中,那么执行以下操作是否正确(基本上对于上述第一个代码块中的这两种方法而言) :
protected override void OnStop()
{
// Update the service state to Stop Pending.
ServiceStatus serviceStatus = new ServiceStatus();
serviceStatus.dwCurrentState = ServiceState.SERVICE_STOP_PENDING;
serviceStatus.dwWaitHint = 100000;
SetServiceStatus(this.ServiceHandle, ref serviceStatus);
_taskManager.Stop();
// Update …Run Code Online (Sandbox Code Playgroud) 我正在尝试在Quartz.net中创建一个工作,它将监视所有其他工作的状态并定期更新日志文件.它只会在作业完成执行后从作业中获取数据,但我正在尝试获取作业状态的动态信息.
我写了尽可能简单的测试工作,测试一半工作(这是令人沮丧的,因为我无法分辨实际代码中有什么不同).这是测试代码:
工作
[PersistJobDataAfterExecution]
[DisallowConcurrentExecution]
class SimpleFeedbackJob : IInterruptableJob
{
private DateTime _lastRun;
public string LastRun { get { return _lastRun.ToString(); } }
private string _status;
public void Interrupt()
{
}
public void Execute(IJobExecutionContext context)
{
_status = "working";
_lastRun = DateTime.Now;
JobDataMap jobData = context.JobDetail.JobDataMap;
jobData["time"] = LastRun;
jobData["status"] = _status;
DateTime n = DateTime.Now.AddSeconds(5);
while (DateTime.Now < n) { }
//Thread.Sleep(5000);
_status = "idle";
jobData["status"] = _status;
}
}
public class LogUpdaterJob : IInterruptableJob
{
private IScheduler _scheduler …Run Code Online (Sandbox Code Playgroud) 有没有办法使用变量来决定文字字符串插值中的小数点数?
例如,如果我有类似的东西
f'{some_float:.3f}'
Run Code Online (Sandbox Code Playgroud)
有没有办法3用变量替换?
最终目标是将数据标签添加到条形图:
def autolabel_bar(rects, ax, decimals=3):
"""
Attach a text label above each bar displaying its height
"""
for rect in rects:
height = rect.get_height()
ax.text(rect.get_x() + rect.get_width()/2.,
height + 0.035,
f'{round(height,decimals):.3f}',
ha='center',
va='center')
Run Code Online (Sandbox Code Playgroud)
但是我想不出一种简单的方法来用3变量替换字符串插值中的decimal。
python string-formatting string-interpolation python-3.x f-string
matlab ×4
c# ×2
python ×2
python-2.7 ×2
quartz.net ×2
arrays ×1
f-string ×1
function ×1
genfromtxt ×1
git ×1
if-statement ×1
inline ×1
matplotlib ×1
matrix ×1
mplot3d ×1
numpy ×1
python-3.x ×1
struct ×1