小编kel*_*lin的帖子

如何显示保存到变量的绘图?

不过,我的第一个 python 问题。

考虑一下我在 jupyter 笔记本中与 seaborn 一起工作。假设我创建了一个图并将其保存到一个变量中:

g = sns.jointplot(ap['ap_lo'], ap['ap_hi']);
Run Code Online (Sandbox Code Playgroud)

会显示一次,因为我%matplotlib inline一开始就加了。

现在,经过一些更改,我想再次显示g

ax = g.ax_joint
ax.set_xscale('log')
ax.set_yscale('log')
g.ax_marg_x.set_xscale('log')
g.ax_marg_y.set_yscale('log')

sns.plt.show()
Run Code Online (Sandbox Code Playgroud)

正如你所看到的,我调用了sns.plt.show(),但没有效果。我也尝试过将g;org; sns.plt.show()放在最后。

python matplotlib seaborn jupyter-notebook

5
推荐指数
1
解决办法
2816
查看次数

Swift:打印存储在变量中的函数的名称

下面的例子:

let plus: (Int, Int) -> Int = (+)
print(plus)
debugPrint(plus)

print(UIView.removeFromSuperview)
debugPrint(UIView.removeFromSuperview)

print(UnsafePointer<Int>.distance(to:))
debugPrint(UnsafePointer<Int>.distance(to:))
Run Code Online (Sandbox Code Playgroud)

打印无用的输出:

(功能)
(功能)
(功能)
(功能)
(功能)
(功能)

Swift 有没有办法获取函数的名称?我的意思是,不是当前正在运行的函数的名称 ( #funciton)。但是存储在变量中的函数名,或者类函数等。每种语言,尤其是假装函数式的语言,都应该有这样的能力,对吗?

function swift

5
推荐指数
1
解决办法
747
查看次数

使用 SKEffectNode 进行颜色混合的 SKVideoNode 崩溃

我需要将颜色混合到视频中,就像在 SKSpriteNode 中使用纹理一样。该视频具有透明度(HEVC),您可以在此处下载。医生说视频可以混合颜色,我正在编写正确的代码,但它崩溃了。

引用:

视频节点无法着色。但是,可以将其添加为 SKEffectNode 的子级,以添加 Core Image 滤镜以进行颜色处理和其他效果。

我使用的代码:

    let videoEffect = SKEffectNode()
    videoEffect.name = "videoEffect"
    videoEffect.filter = CIFilter(name: "CIColorBlendMode")
    let colorImg = CIImage(color: CIColor(color: .red))
    videoEffect.filter?.setValue(colorImg, forKey: "inputBackgroundImage")
    videoEffect.shouldEnableEffects = true
    addChild(videoEffect)

    let videoNode = SKVideoNode(fileNamed: "puppets_with_alpha_hevc.mov")
    videoNode.name = "video"
    videoNode.zPosition = ZPosition.aiBot - 0.5
    videoEffect.addChild(videoNode)
Run Code Online (Sandbox Code Playgroud)

在 iOS 15.2 模拟器上运行,出现崩溃并输出以下内容:

-[MTLTextureDescriptorInternal validateWithDevice:]:1325: 断言失败`纹理描述符验证 MTLTextureDescriptor 的宽度为零。MTLTextureDescriptor 的高度为零。

可能是过滤器设置不正确?好吧,只需注释掉过滤器,如下所示:

    //videoEffect.filter = CIFilter(name: "CIColorBlendMode")
    //let colorImg = CIImage(color: CIColor(color: .red))
    //videoEffect.filter?.setValue(colorImg, forKey: "inputBackgroundImage")
Run Code Online (Sandbox Code Playgroud)

现在我们只有一个没有效果的效果节点。这应该有效。但...

-[MTLDebugRenderCommandEncoder validateCommonDrawErrors:]:5252: …

ios cifilter hevc sprite-kit skvideonode

5
推荐指数
0
解决办法
212
查看次数

在泛型类型的委托协议中使用关联类型

我有Game课。我将其设为通用是因为我需要支持不同类型的板。现在我只想添加一个经典的 iOS 风格的委托,其方法将接受游戏和新的积分值作为参数。如何以 Swift 方式实现这一目标associatedtype?我真的很困惑,我无法实现如此简单的逻辑。

protocol GamePointsDelegate {
    associatedtype B: Board
    func game(_ game: Game<B>, didSetPoints points: Int)
}

class Game<B: Board> {
    let board: Board

    var points = 0 {
        // Compiler Error
        // Member 'game' cannot be used on value of protocol type 'GamePointsDelegate'; use a generic constraint instead
        didSet { pointsDelegate?.game(self, didSetPoints: points) }
    }

    // Compiler Error
    // Protocol 'GamePointsDelegate' can only be used as a generic constraint because it has Self …
Run Code Online (Sandbox Code Playgroud)

generics protocols associated-types swift

4
推荐指数
1
解决办法
1277
查看次数

Swift 包管理器解压失败

当切换到不同的分支或克隆项目时,我收到此包管理器错误。构建失败并且“清理构建文件夹”没有帮助。

错误:

无法提取二进制目标“AWSConnect”所需的“https://releases.amplify.aws/aws-sdk-ios/AWSConnect-2.26.6.zip”:.../Library/Developer/Xcode/DerivedData/MyApp -cbgtlihuudupsqdzyjdbyvcwkilh/SourcePackages/artifacts/extract/AWSConnect 不是目录

xcode swift swift-package-manager

3
推荐指数
1
解决办法
1459
查看次数