当我有x,y,强度时,我不知道如何创建热图(或等高线图).我有一个看起来像这样的文件:
0,1,6
0,2,10
....
Run Code Online (Sandbox Code Playgroud)
至今:
with open('eye_.txt', 'r') as f:
for line in f:
for word in line.split():
l = word.strip().split(',')
x.append(l[0])
y.append(l[1])
z.append(l[2])
Run Code Online (Sandbox Code Playgroud)
尝试使用pcolormesh,但它想要一个形状对象,我不确定如何将这些列表转换为numpy数组.
我试过了:
i,j = np.meshgrid(x,y)
arr = np.array(z)
plt.pcolormesh(i,j,arr)
plt.show()
Run Code Online (Sandbox Code Playgroud)
它告诉我:
IndexError: too many indices
Run Code Online (Sandbox Code Playgroud)
有人可以阻止我对着键盘砸我的头吗?
我目前正在尝试在C++ 11中模拟一些固件.在固件中,我们有一个32位的固定数据长度,我们将这32位分成更小的数据包,例如,我们有一个9位大小的数据包,另外6位被打包成32位字.
在C++中,我想确保我输入的数据具有这些长度.我不在乎是否溢出,只是只有9位被操作或传递给另一个函数.
理想情况下,我想要一些简单的typedef:
only_18_bits some_value;
Run Code Online (Sandbox Code Playgroud)
struct sel_vals{
int_fast32_t m_val : 18;
int_fast8_t c_val : 5;
}
Run Code Online (Sandbox Code Playgroud)
但这有点烦人,因为每当我想使用它时我都必须这样做:
sel_vals somevals;
somevals.m_val = 5;
Run Code Online (Sandbox Code Playgroud)
对我来说似乎有点冗长,我必须首先声明结构.
也是出于显而易见的原因,我不能只做以下事情:
typedef sel_vals.m_val sel_vals_m_t;
typedef std::vector<sel_vals_m_t>;
Run Code Online (Sandbox Code Playgroud)
我可以使用,std::bitset<9>但每当我想做一些数学我必须将其转换为无符号,它只是有点凌乱.我想避免一塌糊涂.
有任何想法吗?
我有一个QGridLayout将包含一堆小部件。当循环添加了太多小部件并且它们无法全部放入页面时,问题就出现了。我想添加一个滚动条,但显示不正确。
此函数返回一个添加到主布局的选项卡,它包含网格布局:
QTabWidget *RegistersTab::createTab()
{
QTabWidget *tab = new QTabWidget(this);
std::vector<QGridLayout*> loVec; //to add to master layout
for(int i=0; i<2; i++) //number of pages
{
QWidget *client = new QWidget(this); //this part breaks it
QScrollArea *scrollArea = new QScrollArea(this);
scrollArea->setWidget(client);
QTabWidget *tabPage = new QTabWidget(client);
QGridLayout *loGrid = new QGridLayout(client);
tabPage->setLayout(loGrid);
QString title = QString("Page %1").arg(i);
tab->addTab(tabPage, title);
loVec.push_back(loGrid);
}
m_loGridVec.push_back(loVec);
return tab;
}
Run Code Online (Sandbox Code Playgroud)
该GridLayout载体是存在的,所以我可以添加小部件和后操纵它。目前,我的标签顶部有一个灰色框 - 所以有些东西坏了。如果我删除滚动区域并设置(client)为(this).
我猜有一个简单的更正要进行?
编辑(如何制作标签):
ui->lo->addWidget(m_tab);
m_tab->addTab(createTab(), title); …Run Code Online (Sandbox Code Playgroud) 我正在尝试创建一个灵活的常量数组。我想使用二维数组,有时可能是例如 2x1、2x2、3x2 数组等。例如:
type int_2d_array is array (integer range<>, integer range<>) of integer;
constant M : positive := 2;
constant nMax : positive := 1;
constant n : int_2d_array(M - 1 downto 0, nMax - 1 downto 0) := ( (1) , (2) ); -- wrong
error: type int_2d_array does not match with the integer literal
Run Code Online (Sandbox Code Playgroud)
如果我这样做,它不会抱怨:
type int_2d_array is array (integer range<>, integer range<>) of integer;
constant M : positive := 2;
constant nMax : positive := 2;
constant …Run Code Online (Sandbox Code Playgroud) 我有一个问题,使用HLS工具比写下原始VHDL/verilog更容易解决.目前我正在使用Xilinx Virtex-7,因为我认为这已经被其他一些供应商所解决.
我可以使用VHDL 2008.
所以在VHDL中想象你有很多计算,例如:
p1 <= a x b - c;
p2 <= p1 x d - e;
p3 <= p2 x f - g;
p4 <= p2 x p1 - p3;
Run Code Online (Sandbox Code Playgroud)
目前,如果我用IP核编写它,它将是四个DSP IP核,并且由于不同的端口宽度,我必须生成这个IP核4次.每当我对其中一些外部信号进行更改时,所有宽度都会再次改变.跟踪所有这些调整大小是一件痛苦的事情,特别是在调整签名向量的大小时.
我有很多数学因而有很多DSP逻辑.使用HLS工具编写此块会更容易.理想情况下,我希望它能够处理宽度并相应地对数据进行位移.
这样的工具存在吗?你会推荐哪一个?
奖励积分:
这些工具中的任何一个都可以处理浮点数学并让您控制精度吗?
最初项目编译并运行良好.然后没有修改setuptab.h|.cpp文件,我试图避免创建一个新的实例,setuptab所以我试着把它传递过来.
No matching constructor for initialization of 'Ps::MainView'
m_mainView(*new MainView(nullptr), m_setupTab)
^ ~~~~~~~
Candidate constructor (the implicit copy constructor) not viable: no known conversion from 'nullptr_t' to 'const Ps::MainView' for 1st argument
class MainView : public QMainWindow
^
Run Code Online (Sandbox Code Playgroud)
这是一个小项目,我有以下文件:
main.cpp
startup.h|.cpp
View/mainview.h|.cpp
View/setuptab.h|.cpp
Run Code Online (Sandbox Code Playgroud)
main.cpp只是:#include <QApplication>
#include "startup.h"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
Ps::Startup start_up;
start_up.show();
return a.exec();
}
Run Code Online (Sandbox Code Playgroud)
Startup.cpp#include "startup.h"
#include "View/mainview.h"
#include "View/setuptab.h"
namespace Ps
{ …Run Code Online (Sandbox Code Playgroud)