小编bee*_*lej的帖子

在R Markdown文档中使用Python代码绘制matplotlib图形

是否可以使用Python matplotlib代码在RStudio中绘制图形?

例如,在Python matplotlib代码下面:

import numpy as np
import matplotlib.pyplot as plt

n = 256
X = np.linspace(-np.pi,np.pi,n,endpoint=True)
Y = np.sin(2*X)

plt.plot (X, Y+1, color='blue', alpha=1.00)
plt.plot (X, Y-1, color='blue', alpha=1.00)
plt.show()
Run Code Online (Sandbox Code Playgroud)

输出图将是:

在此输入图像描述

然后我需要写一个R Markdown来包含这些代码并在编织降价后自动生成图形.

matplotlib rstudio knitr r-markdown

14
推荐指数
2
解决办法
3921
查看次数

python显示地图与谷歌地图

我找到了一个googlemaps包来从python访问谷歌地图,但没有找到任何演示以在python代码中显示结果.

例如:

gmaps = googlemaps.Client(key='Add Your Key here')

# Geocoding an address
geocode_result = gmaps.geocode('1600 Amphitheatre Parkway, Mountain View, CA')

# Look up an address with reverse geocoding
reverse_geocode_result = gmaps.reverse_geocode((40.714224, -73.961452))

# Request directions via public transit
now = datetime.now()
directions_result = gmaps.directions("Sydney Town Hall",
                                     "Parramatta, NSW",
                                     mode="transit",
                                     departure_time=now)
Run Code Online (Sandbox Code Playgroud)

我可以将directions_result打印到控制台,但不知道如何以图形模式显示地图.如何在python中将搜索结果显示为地图?

python google-maps

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

emacs gdb源代码窗口焦点问题

我现在正在使用emacs 25.1和gdb 7.12.但是当我运行"Mx gdb -i = mi a.out"时,然后设置断点并发出下一个命令,一个源代码窗口总是弹出以获得焦点,然后如果我想再次发出下一个命令,我必须切换到首先是gdb窗口,否则,键盘输入将直接到源代码文件.

我们应该专注于gdb窗口,而不是将焦点切换到源代码窗口.

我使用这个gdb模式错了吗?BTW,gud-gdb模式运行正常.在此输入图像描述

emacs gdb

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

析构函数中的c ++异常

从其他线程,我知道我们不应该在析构函数中抛出异常!但是对于下面的例子,它确实有效.这是否意味着我们只能在一个实例的析构函数中抛出异常?我们该如何理解这个代码示例!

#include <iostream>
using namespace std;
class A {
 public:
  ~A() {
    try {
      printf("exception in A start\n");
      throw 30;
      printf("exception in A end\n");      
    }catch(int e) {
      printf("catch in A %d\n",e);
    }
  }
};
class B{
 public:
  ~B() {
    printf("exception in B start\n");
    throw 20;
    printf("exception in B end\n");    
  }
};
int main(void) {
  try {
    A a;
    B b;
  }catch(int e) {
    printf("catch in main %d\n",e);
  }
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

输出是:

exception in B start
exception in A start …
Run Code Online (Sandbox Code Playgroud)

c++ exception-handling

5
推荐指数
2
解决办法
3233
查看次数

plantuml - 绘制注释上面的活动图

我在这里找到了一个很好的活动图,但没有源代码.如下所示: 在此输入图像描述

我尝试用plantuml绘制它,下面是我的代码:

@startuml
skinparam linetype ortho

(*) -down-> "clone repository"
note right
A:git clone url/to/repository
scp -p url/to/hooks/commit_msg repository/.git/hooks
end note
-down->[get an assignment] "coding"
-down-> "commit locally"
note right
B:git add xxx
git commit
end note
-down-> "review"
note right
C:git push origin refs/for/<branch>
end note
if "" then
  -left->[rejected] "rework"
  -up-> "recommit"
'note left
'D:git add xxx
'git commit --amend
'end note
  -right-> "review"
else
  --right-->[approved] "submit"
note right: E:click "submit" on on corresponding gerrit page …
Run Code Online (Sandbox Code Playgroud)

plantuml

4
推荐指数
2
解决办法
2808
查看次数

orgmode - 禁用 elisp 代码执行确认对话框

当用户单击链接时,我有以下代码来调用 elisp 函数“myfun”:

#+BEGIN_SRC elisp :results output raw
  (defun myfun(filepath lineno)
    (if (not (get-buffer bufname))
        (get-buffer-create bufname)
      )
    (switch-to-buffer-other-window bufname)
    (global-linum-mode)
    (erase-buffer)
    (insert-file-contents (format "%s" filepath))
    (goto-char (point-min))
    (forward-line lineno)
    (setq start (point))
    (forward-line -1)
    (setq end (point))
    (let ((x (make-overlay start end)))
      (overlay-put x 'face '(:background "#fef0f1")))
    )

  (defun createSampleFile(file-name count)
    (let ((c 0))
      (with-temp-buffer
        (while (< c (* 2 count))
          (setq c (1+ c))
          (insert (format "line %d\n" c))
          (write-file filename)
          ))))

  (let ((c 0)(filename nil))
    (while (< …
Run Code Online (Sandbox Code Playgroud)

elisp org-mode

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

c strncpy null是否终止

我正在阅读这份文件,它说:

char *strncpy(char *destination, const char *source, size_t num);
Run Code Online (Sandbox Code Playgroud)

从字符串复制的字符复制第一num的人物sourcedestination.如果在复制字符source之前找到C字符串的末尾(由空字符表示)num,destination则用零填充,直到num写入总共字符为止.

如果source长于,则不会在目标末尾隐式附加空字符num.因此,在这种情况下,destination不应将其视为空终止的C字符串(读取它会溢出).

destination并且source不得重叠(重叠时参见memmove更安全的替代方案).

但我对此声明感到困惑:

在这种情况下,目标不应被视为空终止的C字符串(读取它会溢出)

因为if num > strlen(source),它将'\0'在最后填充,'\0'实际上是字符串中的空(终止)字符,为什么它不应被视为以null结尾的C字符串?

我写了下面的代码来验证:

  char from[] = { 'h', 'e', 'l', 'l', 'o', '\0' };
  char to[1024];
  for (int i = 0; i < 1024; i++) {
      to[i] = 'e';
  }
  strncpy(to, from, 1024);
  printf("from …
Run Code Online (Sandbox Code Playgroud)

c strncpy

2
推荐指数
2
解决办法
6674
查看次数