我正在调试我正在用Xcode编写的iPhone应用程序,但有时现在调试器(它是GDB)减慢了很多(进行逐步调试)并且有时变得没有响应(踩踏,踩踏的图标 - 结束,踩出是不可点击的),有时它恢复正常并继续,有时它永远保持这样或控制台中出现一条消息:"超时"(或类似的东西),我可以看到我的CPU活动监控率高达90%.作为一种解决方法,我曾经在我感兴趣的代码行之后添加了一个brekpoint,并简单地使用'Continue'来'继续'(这样做它运行得非常好而且快速).这可能是代码依赖的吗?有没有办法调试调试器(行为)?
更新:完整的消息是
Timed out fetching data. Variable display may be inaccurate.
Run Code Online (Sandbox Code Playgroud)
谷歌搜索它我发现它发生在Xcode gdb试图查看内部数据格式化程序时.有人建议禁用运行>变量视图>使用数据格式化程序(在xcode 3.2中,以前我猜它是Debug->变量视图 - >启用数据格式化程序)它似乎也适合我(直到现在)所以现在我问:为什么?:D
UPDATE2:这解决了调试器停止在代码的特定部分,但它在另一个调用中挂起(使用相同的消息).在我看来,这涉及一些CoreData API(NSEntityDescription*)entityForName: inManagedObjectContext:
更新3:最好是缓存NSEntityDescription而不是总是创建一个新的?
我创建了一个非常简单的热图图表,Seaborn显示了相似性方阵.这是我使用的一行代码:
sns.heatmap(sim_mat, linewidths=0, square=True, robust=True)
sns.plt.show()
Run Code Online (Sandbox Code Playgroud)
这是我得到的输出:

我想做的是在x和y轴上表示不是我的实例的标签而是一个彩色指示器(想象每个轴上的一个小的palplot),其中每种颜色代表与每个实例相关的另一个变量(让我们说我有这个信息存储了一个名为的列表labels加上另一个图例,这个信息旁边的那个信息指定了热图的颜色(一个像那样lmplot).重要的是这两种信息具有不同的调色板.
Seaborn有可能吗?
UPDATE
我正在寻找的是clustermap正确的建议.
sns.clustermap(sim_mat, row_colors=label_cols, col_colors=label_cols
row_cluster=False, col_cluster=False)
Run Code Online (Sandbox Code Playgroud)
这是我得到的顺序,点和线太小,我没有看到在文档中放大它们的方法.我想
另外,如何添加图例并将两个图例放在另一个图例的相同位置?

我正在尝试用Java 实现Fuzzy C-Means算法的一个版本,我试图通过计算一次只能计算一次的所有内容来进行一些优化.
这是一个迭代算法,关于矩阵的更新,像素x簇成员矩阵U(行中值的总和必须为1.0),这是我想要优化的更新规则:

其中x是矩阵的元素X(像素x特征),v属于矩阵V (簇x特征).并且m是一个参数,范围从1.1to infinity和c是簇的数量.使用的距离是欧几里德范数.
如果我必须以平庸的方式实施这个公式,我会这样做:
for(int i = 0; i < X.length; i++)
{
int count = 0;
for(int j = 0; j < V.length; j++)
{
double num = D[i][j];
double sumTerms = 0;
for(int k = 0; k < V.length; k++)
{
double thisDistance = D[i][k];
sumTerms += Math.pow(num / thisDistance, (1.0 / (m - …Run Code Online (Sandbox Code Playgroud) 在我将ManagedObject插入上下文后,我想稍后在保存上下文之前获取它(我会在插入所有对象后保存).如果以前没有保存上下文,那么稍后使用有关这些对象的提取查询上下文似乎不会返回任何内容.有没有办法只在最后保存?(我想我可以将我的对象保存在数组或字典中并查询但我认为coredata会为我做这个)
我正在寻找一个R-Tree实现,在C,Objective-c甚至C++中,它将有效地搜索一个点落下的2d矩形(内存效率也会很高,但我可以牺牲更多记忆时间,即使我在iPhone上).一个好的文档也将受到赞赏
我正在寻找一种算法,它提供了一种生成结的图形表示的方法(2D或3D,但前者,最好是矢量图形).
在尝试自己设计一些东西之前,我想了解一些现有软件的存在,这些软件不仅可以代表它们(在内存中),还可以在一些图形表示中进行可视化(有许多).它可以是库的形式,也可以是简单的函数,甚至是伪代码算法,它试图指定如何在屏幕上正确绘制知识.
正如之前的链接所暗示的那样,在Wolfram Mathematica中有一个包,命名KnotTheory就是这样(以几乎完整的方式).但是,它不可移植,也不是免费软件和访问它的模块对我来说非常麻烦(在Java中免费实现,只是为了命名一种语言,但每种语言都很好,从可移植性和开放性的角度看是理想的) .
我已经看到许多软件可用(但大多数都是旧的,无法访问或可用).你有一些很好的分享指南吗?
更新:由于两个投票结束这个问题已经出现,我正在以更务实和明确的方式重述它:是否有算法绘制和生成结?已经实施了一些东西
更新2(用于重新打开) 图形表示可以是3D渲染对象或2D svg图形(我正在从中抽象出来,因为我期待编程语言为Processing(或相同的Mathematica本身),它为您提供绘制的基元屏幕上的曲线(样条曲线,贝塞尔曲线等)(然后将它们导出为栅格或矢量图形).算法应采用一个结参数化作为输入(即,如果我们谈论由它们的交叉属性描述的结,它们的值是什么需要),返回上面的一个图形表示(即使是2d空间中的一系列点).也就是说,任何参数化都很好,我的目的只是为了得到如何绘制结的内省,以获得一个算法,以特定的方式做到这一点,导致一个特定的表示,会很好(Mathematica的lib似乎能够在如此多的表示中绘制它).
升级到iOS SDK 4.2我在我的应用程序中遇到了一些错误行为(另一个在这里被问到).我要问你的帮助是关于一个OpenGL视图(一个EAGLView子类),它不再渲染我正在放入的3d模型.
视图已分配,它似乎识别出手势,但其内容不可见(我已经检查过它是关于视图的,而不是通过为背景着色而错误放置模型:它不会对其进行着色glClearColor()).
当我双击它时,它将调整此方法的大小调整(它会全屏,在此之前它是一个小小的UIVIew):
- (void)animateToGrow{
DNSLog(@"grow");
grow = YES;
oldFrame = self.frame;
oldCenter = self.center;
[UIView beginAnimations:@"MoveAndStrech" context:nil];
[UIView setAnimationDuration:0.5];
[UIView setAnimationBeginsFromCurrentState:YES];
self.frame = CGRectMake(0, 0, WIDTH, HEIGHT);
self.center = CGPointMake(CENTER_X, CENTER_Y);
[UIView commitAnimations];
[self setupGLPerspectiveNear:0.1 far:1000];
}
Run Code Online (Sandbox Code Playgroud)
并且奇迹般地出现了模型,甚至背景也变得有色.
我有一个方法可以调整它的大小并使其恢复到之前的帧和中心位置,当它被调用时,视图再次变为"空".
在任何建议之前?(如果需要,我可以发布更多代码)
更新 这是在模拟器上发生的(此时无法在设备上进行测试).如果这是一个公认的错误,有没有人参考Apple文档?
更新2 我使用的是OpenGL ES 1.1而不是2.0.
这是我在EAGLView中所做的layoutSubViews:
- (void)layoutSubviews
{
[EAGLContext setCurrentContext:_context];
[self destroyFramebuffer];
[self createFramebuffer];
[self drawView];
}
Run Code Online (Sandbox Code Playgroud)
这是我的 createFramebuffer
- (BOOL)createFramebuffer …Run Code Online (Sandbox Code Playgroud) 使用CoreData(在iPhone应用程序上)我从模型中生成了我的实体类,并为某些类添加了更多方法.似乎有时我会因为调用其中一种方法而获得异常.异常不是随机的,只涉及一些ManagedObject子类(其他人似乎正确响应).这是我得到的一个例子:
-[NSManagedObject printTime]: unrecognized selector sent to instance 0x5b50af0
Run Code Online (Sandbox Code Playgroud)
2010-07-15 10:29:55.216 LP [6686:207]***由于未捕获的异常'NSInvalidArgumentException'终止应用程序,原因:' - [NSManagedObject printTime]:无法识别的选择器发送到实例0x5b50af0'
NSManagedObject是我从fetch获取的对象(转换为正确的子类),我所讨论的方法是打印方法.(我试图检索那些不是故障)我错过了什么?
我已经将UIAlertView子类化如下:
@interface NarrationAlertView : UIAlertView {
UIImage * backgroundImage; //The image I want as custom background
UILabel * textualNarrationView; //The test I wanna be displayed on the view
}
Run Code Online (Sandbox Code Playgroud)
并以这种方式实现:
- (id)initNarrationViewWithImage:(UIImage *)image{
if (self = [super init]){
UILabel * alertTextLabel = [[UILabel alloc] initWithFrame:CGRectZero];
self.textualNarrationView = alertTextLabel;
[alertTextLabel release];
[self addSubview:alertTextLabel];
}
return self;
}
- (void)drawRect:(CGRect)rect {
/* Here I draw the image as background */
CGSize imageSize = self.backgroundImage.size;
[self.backgroundImage drawInRect:CGRectMake(0, 0, imageSize.width, imageSize.height)];
}
- (void)layoutSubviews …Run Code Online (Sandbox Code Playgroud) 我需要将长表示位准确地转换为双精度位,并且我的解决方案应可移植到不同的体系结构(能够成为跨编译器的标准,因为 g++ 和 clang++ 也很棒)。
我正在编写一个快速近似值来计算这个问题答案中建议的 exp 函数。
double fast_exp(double val)
{
double result = 0;
unsigned long temp = (unsigned long)(1512775 * val + 1072632447);
/* to convert from long bits to double,
but must check if they have the same size... */
temp = temp << 32;
memcpy(&result, &temp, sizeof(temp));
return result;
}
Run Code Online (Sandbox Code Playgroud)
我正在使用此处找到的建议将 long 转换为 double。我面临的问题是,虽然我在 OS X 下使用 clang++ 和 libc++ 得到了 [-5, 5] 中 int 值的以下结果:
0.00675211846828461
0.0183005779981613
0.0504353642463684
0.132078289985657
0.37483024597168 …Run Code Online (Sandbox Code Playgroud) iphone ×6
c++ ×2
core-data ×2
ios4 ×2
java ×2
algorithm ×1
background ×1
c ×1
debugging ×1
double ×1
eaglview ×1
gdb ×1
heatmap ×1
long-integer ×1
math ×1
matplotlib ×1
nsexception ×1
objective-c ×1
opengl-es ×1
optimization ×1
processing ×1
python ×1
rendering ×1
seaborn ×1
tree ×1
uialertview ×1
uiview ×1
xcode ×1