我用python和pyplot生成了一个3D图.我可以将此图导出为PDF.这有点无聊,有时候.平面3D图很难阅读/理解.
但是,PDF支持3D模型,例如CAD模型.这让我想知道是否有可能将matplotlib或类似东西生成的3D绘图输出到3D PDF?这将是惊人的存储美丽的3D情节!如果是这样,我该怎么做?
有一个%Y-%M-%D %H:%M:%S从文本文件中收集的带有时间戳(格式)的数组。我想用 matplotlib 在一个子图中绘制这些。但我无法让它工作。我在想这个:
import numpy as np
import datetime
import matplotlib.pyplot as plt
import matplotlib.dates as md
dateconv = lambda s: datetime.strptime(s, '%Y-%M-%D %H:%M:%S:.%f')
col_names = ["timestamp", "light", "sensor1", "sensor2", "sensor3", "temp"]
dtypes = ["object", "uint8", "uint8", "uint8", "uint8", "float"]
mydata = np.genfromtxt("data.csv", delimiter=",", names = col_names, dtype=dtypes, converters={"Time": dateconv})
time = md.date2num(mydata['timestamp'])
sensor1 = mydata['sensor1']
sensor2 = mydata['sensor2']
sensor3 = mydata['sensor3']
light = mydata['light']
temp = mydata['temp']
fig = plt.figure()
rect = fig.patch
rect.set_facecolor('#31312e')
ax1 = …Run Code Online (Sandbox Code Playgroud) 我有一个深色图像(原始格式),并绘制了图像和图像的分布。正如您所看到的,16 处有一个峰值,请忽略它。我想通过这个直方图拟合高斯曲线。我使用这种方法来拟合:
Un-normalized Gaussian curve on histogram。然而; 我的高斯拟合从来没有接近它应该的样子。我在将图像转换为正确的绘图格式时是否做错了什么,或者还有其他问题吗?

这是我用来生成此数据的当前代码:
import numpy as np
import matplotlib.pyplot as plt
from scipy.optimize import curve_fit
def fitGaussian(x,a,mean,sigma):
return (a*np.exp(-((x-mean)**2/(2*sigma))))
fname = 'filepath.raw'
im = np.fromfile(fname,np.int16)
im.resize([3056,4064])
plt.figure()
plt.set_cmap(viridis)
plt.imshow(im, interpolation='none', vmin=16, vmax=np.percentile(im.ravel(),99))
plt.colorbar()
print 'Saving: ' + fname[:-4] + '.pdf'
plt.savefig(fname[:-4]+'.pdf')
plt.figure()
data = plt.hist(im.ravel(), bins=4096, range=(0,4095))
x = [0.5 * (data[1][i] + data[1][i+1]) for i in xrange(len(data[1])-1)]
y = data[0]
popt, pcov = curve_fit(fitGaussian, x, y, [500000,80,10])
x_fit = py.linspace(x[0], x[-1], 1000) …Run Code Online (Sandbox Code Playgroud) 我有这个具有以下构建功能的 treeView 小部件:
void berichtenhistorie::DirectoryDisplay()
{
QFileSystemModel *dirModel = new QFileSystemModel(this);
dirModel->setRootPath("path");
dirModel->setFilter(QDir::Files | QDir::NoDotAndDotDot | QDir::AllDirs);
ui->treeView->setModel(dirModel);
ui->treeView->setRootIndex(dirModel->index("path"));
ui->treeView->hideColumn(1);
ui->treeView->hideColumn(2);
ui->treeView->setSortingEnabled(true);
ui->treeView->sortByColumn(3);
ui->treeView->resizeColumnToContents(0);
ui->treeView->resizeColumnToContents(3);
}
Run Code Online (Sandbox Code Playgroud)
但是ui->treeView->resizeColumntoContents(#);
我没有收到任何错误,但它不会调整它的大小。它看起来像这样:

但这就是它的样子

我如何使其正常工作?
谢谢!
在LabView中有一些TCP/IP连接的例子,但我真的不知道VI在做什么.一些功能正在做什么.以下是这些示例的图片.
图1:服务器
为什么在强制转换功能之后导线被分成两条线?而且我真的没有得到这些标记的其他功能.
图2:客户端
我有一个QTreeView文本文件列表.如果选择了一个文件,void FileList_dialog::on_openButton_released()它应该将一个变量传递path给对话框textFile_dialog.
到现在为止我这样:
void FileList::on_openButton_released()
{
QModelIndex index = ui->treeView->currentIndex();
QFileSystemModel *model = (QFileSystemModel*)ui->treeView->model();
QString path = model->filePath(index);
QString name = model->fileName(index);
QString dir = path;
QFile file(path);
qDebug() << path;
textFile_dialog textFile;
textFile.setModal(true);
textFile.exec();
}
Run Code Online (Sandbox Code Playgroud)
但是如何将变量传递path给textFile_dialog?