小编Rik*_*d N的帖子

使用 altair 将身份线添加到散点图

我创建了一个基本的散点图来使用 altair 比较两个变量。我希望这些变量具有很强的相关性,并且这些点最终应该位于或接近于同一直线。

如何将身份线添加到情节中?

我希望它是一条类似于由创建的线mark_rule,但对角线而不是垂直或水平延伸。

这是我得到的:

import altair as alt
import numpy as np
import pandas as pd

norm = np.random.multivariate_normal([0, 0], [[2, 1.8],[1.8, 2]], 100)

df = pd.DataFrame(norm, columns=['var1', 'var2'])

chart = alt.Chart(df, width=500, height=500).mark_circle(size=100).encode(
    alt.X('var1'),
    alt.Y('var2'),
).interactive()

line = alt.Chart(
    pd.DataFrame({'var1': [-4, 4], 'var2': [-4, 4]})).mark_line().encode(
            alt.X('var1'),
            alt.Y('var2'),
).interactive()

chart + line
Run Code Online (Sandbox Code Playgroud)

此示例的问题在于,缩放时线条不会永远延伸(如规则标记),并且绘图会自动缩放到线条末端,而不仅仅是点。

python vega-lite altair

7
推荐指数
1
解决办法
938
查看次数

如何创建具有外部依赖项 libxml2 的 CRAN 就绪 R 包

我创建了一个 R 包,我想提交给 CRAN。它包含需要用普通 C 编译的代码,并且此代码依赖于libxml2库。

我目前的解决方案是让 Linux 和 Mac 用户安装该libxml2-dev包,让他们编译和安装 R 源包。

对于 Windows,我创建了一个特殊的二进制 R 包,其中包含所需的二进制依赖项。在阅读 CRAN 指南时,我看到只能上传源包,并且它们可能不包含任何二进制文件。

在这些指导方针之后,我的问题是:

  1. Mac/Linux 可以让用户在安装 R 包之前安装 libxml2-dev 还是有其他解决方案?
  2. 对于无法直接为最终用户安装 libxml2 的 Windows,我应该怎么做?

r cran r-package

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

如何让 github actions 工作流程使用机器人名称将生成的文档推送到同一组织中的其他存储库

我正在github上开发一个python包。在 github 的一个组织下,我有两个存储库myorg/packagemyorg/documentation. 该package存储库包含 python 包和构建 sphinx 文档的方法,并documentation包含通过 github 页面发布的生成的静态 html。

我现在正在设置一个 github 操作工作流程来构建文档,并通过将发布标签推送到存储库来将package其推送到触发,但我在推送到存储库时遇到了问题。documentationpackagedocumentation

理想情况下,我希望将提交标记为由机器人进行,并且我希望所有拥有两个存储库推送权限的人都能够运行工作流程。

这是我当前的工作流程:

name: Deploy

on:
  push:
    tags:
      - 'v*'

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2
      with:
          path: package
    - uses: actions/checkout@v2
      with:
        repository: myorg/documentation
        path: documentation
    - name: Set up Python
      uses: actions/setup-python@v2
      with:
        python-version: 3.9
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install tox …
Run Code Online (Sandbox Code Playgroud)

git github github-pages github-actions

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

如何使用模板在 C++ 中创建两个非常相似的成员函数

我正在编写一个 C++ 库,一个类有两个成员函数,它们仅在一个函数调用中有所不同:

int MyClass::member_func_1(int a) {
   // ...
   int b = some_function();
   // ...
}

int MyClass::member_func_2(int a) {
   // ...
   int b = some_other_function();
   // ...
}
Run Code Online (Sandbox Code Playgroud)

有没有办法不重复这两个函数的代码,同时仍然保持两个成员函数具有相同的函数签名?

  • 由于它是一个库,因此必须在编译库时生成所有代码。
  • 我已经排除了只有一个成员函数和一个额外的布尔参数的选项,以供选择some_functionsome_other_function出于性能原因。
  • 我知道如何使用宏来做到这一点,但可以使用模板,还是有其他更好的方法?

c++ templates

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

标签 统计

altair ×1

c++ ×1

cran ×1

git ×1

github ×1

github-actions ×1

github-pages ×1

python ×1

r ×1

r-package ×1

templates ×1

vega-lite ×1