小编mag*_*gum的帖子

使用额外的刻度和标签注释ggplot

你能帮我注释一个ggplot2散点图吗?

对于典型的散点图(黑色):

df <- data.frame(x=seq(1:100), y=sort(rexp(100, 2), decreasing = T))
ggplot(df, aes(x=x, y=y)) + geom_point()
Run Code Online (Sandbox Code Playgroud)

我想以额外的刻度和自定义标签(红色)的形式添加注释:

示例图片:

在此输入图像描述

r ggplot2

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

如何控制 Holoviews Holomap 图的图例位置?

我正在尝试在全息视图中创建一个 Holomap 图形,该图形在图的顶部包含一个图例。

配置选项“legend_position”适用于非全息图(下面的“example1.html”),但不适用于全息图(下面的“example2.html”)。

import pandas as pd
import holoviews as hv

df = pd.DataFrame(dict(x=[1, 2], y1=[0, 1], y2=[1, 0], y3=[0.8, 0.8], y4=[0.2,0.2]))
curve1 = hv.Curve(df, 'x', 'y1', label='curve1').opts(ylabel='y')
curve2 = hv.Curve(df, 'x', 'y2', label='curve2').opts(ylabel='y')
curve3 = hv.Curve(df, 'x', 'y3', label='curve3').opts(ylabel='y')
curve4 = hv.Curve(df, 'x', 'y4', label='curve4').opts(ylabel='y')

cc12 = (curve1 * curve2).opts(legend_position='top')
hv.save(cc12, "example1.html")

cc34 = (curve3 * curve4).opts(legend_position='top')
hm = hv.HoloMap({'a':cc12, 'b':cc34}, kdims=["option"])
hm = hm.opts(legend_position='top')
hv.save(hm, "example2.html")
Run Code Online (Sandbox Code Playgroud)

我认为这与在全息图案例中不允许在情节之外的图例位置有关。所以问题的答案可能只是“它不应该工作”。问题在于,对于某些绘图,默认图例与曲线重叠,使曲线难以解释。

python bokeh holoviews

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

Python:使用自定义*kwargs记录异常

您可能知道python日志记录模块支持*kwargs定义来自定义日志条目.记录异常似乎不支持此操作.

我的问题:使用logging.exception有一种简单的方法来使用自定义kwargs吗?

最小的例子如下:

import logging
import logging.handlers

def create_logger(): 
    """ initialize logging using sys log

    """
    logger = logging.getLogger()

    form = '%(asctime)s [%(levelname)-8s] %(xyz)s %(message)s'
    local_log_handler = logging.handlers.SysLogHandler(address='/dev/log')
    formatter = logging.Formatter(form)
    local_log_handler.setFormatter(formatter)

    logger.addHandler(local_log_handler)
    return logger

log = create_logger()
try:
    raise AttributeError("whatever")
except:
    log.warn('Alarm! Fire!', extra={'xyz':'POLICE'})
    log.exception('')
Run Code Online (Sandbox Code Playgroud)

输出:

Traceback (most recent call last):
  File "logexample.py", line 27, in <module>
    log.exception('')
  File "/usr/lib/python2.7/logging/__init__.py", line 1172, in exception
    self.error(msg, exc_info=1, *args)
  File "/usr/lib/python2.7/logging/__init__.py", line 1166, in error …
Run Code Online (Sandbox Code Playgroud)

logging exception-handling python-2.7

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

Go - 如何对包装的错误类进行子类型化?

我正在包装错误(以添加上下文),然后区分两个错误。这是我目前用于测试的场景。(该函数是否正确识别了错误?)我的问题是如何减少冗长。

我有两个会产生不同错误的函数:

func a() error {
    return errors.New("a")
}

func b() error {
    return errors.New("b")
}
Run Code Online (Sandbox Code Playgroud)

它们都由传播错误的第三个函数调用。

func doStuff() error {
    err := a()
    if err != nil {
        return WrapA{err}
    }
    err = b()
    if err != nil {
        return WrapB{err}
    }
    return nil
}
Run Code Online (Sandbox Code Playgroud)

在我的主要函数中,我区分了这两个错误。

func main() {
    fmt.Println("Hello, playground")
    err := doStuff()
    
    switch err.(type) {
        case WrapA:
            fmt.Println("error from doing a")
        case WrapB: 
            fmt.Println("error from doing b")
        case nil:
            fmt.Println("nil")
        default:
            fmt.Println("unknown")
    }
}
Run Code Online (Sandbox Code Playgroud)

到目前为止,一切都很好。不幸的是,要实现WrapA和 …

types go

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

标签 统计

bokeh ×1

exception-handling ×1

ggplot2 ×1

go ×1

holoviews ×1

logging ×1

python ×1

python-2.7 ×1

r ×1

types ×1