1. 关闭 Win10 的自动更新(和重启!)

    Win10在默认情况下是打开自动更新的,这本身对多数人来说应该是好事,但有一个非常非常恶心人的设定是同时也会自动重启。重启前甚至还无视其它程序的状态,不管有没有正在修改的文件没有保存,说重启就重启,这是非常糟糕的设计。

    所幸的是在专业版的 Win10 中还可以把这个选项给关闭(据说家庭版是没法修改的,未确认),但不是通过系统带的那个「设置」,而是需要用组策略编辑器来修改,步骤如下:

    1. 按 Win+R 打开运行窗口,输入 gpedit.msc,回车,打开组策略编辑器。
    2. 在左侧栏中依次找到「计算机配置」-「管理模板」-「Windows组件」-「Windows更新」,点击后在右侧双击打开「配置自动更新」,改为「已启用」,左下改为「2-通知下载并通知安装」。

    这样设置后,每次有更新的时候会提示,点击了下载之后才会安装,虽然略微更麻烦一点点,但把那种不知道什么时候会重启的不确定性完全消除了。

    read more
  2. 修正 Inkscape 编辑 matplotlib 导出的文件时内存泄漏的问题

    以前的文章中提到,在 matplotlib 中做标注相比 Origin 来说比较麻烦,但可以输出 SVG 格式,然后用 Inkscape 来做标注,不管是标注文字还是箭头一类,都比较简单。而且 SVG 由于它是一种很标准的通用格式,可以很容易转成 PDF、EMF 或者其它格式。然而最近发现了一个问题,较新版本的 matplotlib 导出的 SVG 在用 Inkscape 编辑时,存在内存泄漏的问题。任何一个几十 kB 的文件,打开后 Inkscape 也会占用几个 G 甚至更大的内存,操作也会变得非常卡顿,十分不正常。

    这个帖子中较为详细地分析了问题的成因,主要原因是 miterlimit 默认被设置成了 100000。恰好由于 Inkscape 渲染 …

    read more
  3. 用 matplotlib 画出规范的论文插图

    我最近所写的论文中基本上放弃了 Origin,而转为用 matplotlib 画几乎所有的插图。相比专业的 Origin,MPL 基本可以替代所有的功能,甚至单论功能还略有胜出。从可定制性角度,两者也接近,但 MPL 没有 Origin 图形化操作的直观性,这方面有所欠缺。而且 MPL 默认的主题和格式都与论文所要求的质量相去甚远,不像 Origin 一样基本默认格式就能凑合用了。

    从我自己的研究领域来看,插图的规范性,主要有几个方面的问题需要设置:

    1. 尺寸,包括图形尺寸、线宽等
    2. 标注,包括对图线的标注、legend等
    3. 图层,叠加不同的坐标轴等
    4. 文字样式、字号等
    5. 输出格式

    一个基本图形的示例

    下面给出了一个示例的代码,通过自定义各种格式基本上可以说符合正式出版的要求:

     1
     2
     3
     4
     5
     6
     7
     8
     9 …
    read more
  4. 检查多维 ndarray 中是否有某元素

    最近又在写科学计算的代码了。今天偶然发现一个 Numpy 中的一个小问题,不注意的话还是很容易踩坑的。

    通常来说,检查一个类似列表的对象中是否有某个元素,最直接的办法是用 in。这个方法对列表、字典、元组等都适用,对一维的 ndarray 对象也适用,例如:

    a = [1, 2, 3]
    print(4 in a)
    b = np.array(a)
    print(4 in b)
    

    结果是False False

    但是,如果这个 ndarray 是二维的数组,结果就非常奇怪了:

    a = [[0,0], [0,1]]
    print([0,2] in a …
    read more
  5. 保存网页到本地的方法(2)

    前一篇文章中讲了我常用的保存网页到本地的办法,最近又有一些新的发现。

    首先是 pandoc 转 docx 到 markdown 对 pandoc 的版本是有要求的,目前版本是1.17.1,可以正确处理带中文的文件。但如果用的是更旧的版本(似乎是1.15以前),会提示无法解码 UTF-8,因此推荐先把 pandoc 版本更新。

    本文最主要想更新的是一个新的发现,我找到了一个叫 Typora 的软件,它本身是一个支持所见即所得的 markdown 编辑器(从知乎上的讨论来说,实现这样的东西似乎难度还很大),但它居然还支持了粘贴网页直接转换成 markdown 的功能。也就是说,不再需要手动保存成 docx,只需要把网页直接粘到里面就已经是 markdown 了。

    还有一点很重要的特性,就是由于它本身所见即所得的特性,相当于每次打开 md 文件都会自动渲染成网页格式,所以甚至省掉了再重新转换成 html …

    read more

« Page 2 / 9 »

links

social