小编Max*_*Noe的帖子

导入Matplotlib没有显示

我试图在我的Linux服务器上运行python脚本并制作并保存一些图.我已经安装ipythonpylabmatplotlib,但后来当我运行我的脚本,我得到这个错误:

Traceback (most recent call last):
  File "/root/dining_hall_graph.py", line 14, in <module>
    from pylab import * 
  File "/usr/lib64/python2.7/site-packages/pylab.py", line 1, in <module>
    from matplotlib.pylab import *
  File "/usr/lib64/python2.7/site-packages/matplotlib/pylab.py", line 265, in <module>
    from matplotlib.pyplot import *
  File "/usr/lib64/python2.7/site-packages/matplotlib/pyplot.py", line 97, in <module>
    _backend_mod, new_figure_manager, draw_if_interactive, _show = pylab_setup()
  File "/usr/lib64/python2.7/site-packages/matplotlib/backends/__init__.py", line 25, in pylab_setup
    globals(),locals(),[backend_name])
  File "/usr/lib64/python2.7/site-packages/matplotlib/backends/backend_gtkagg.py", line 10, in <module>
    from matplotlib.backends.backend_gtk import gtk, FigureManagerGTK, FigureCanvasGTK,\
  File "/usr/lib64/python2.7/site-packages/matplotlib/backends/backend_gtk.py", line 13, in <module>
    import …
Run Code Online (Sandbox Code Playgroud)

python linux matplotlib

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

壁球首先N提交git历史/保持其余的原样

请考虑以下问题:

  • 私有项目在早期阶段包含一些凭据
  • 我们想要开源
  • 我们需要摆脱历史上的凭据
  • 凭据不在单个文件中,而是在代码中
  • 具有多个合并,拉取请求等的复杂历史

我想做的事:

将所有提交从root用户提交到具有干净状态的任意提交到一个大的"初始提交".

当我做:

git rebase -i --root
Run Code Online (Sandbox Code Playgroud)

并将第一次提交压缩在一起:

pick Initial commit \
fixup dirty1        |
fixup dirty2        | Squash these to one, to remove credentials.
fixup dirty3        |
fixup clean1        /
pick clean2
pick clean3
...
...
Run Code Online (Sandbox Code Playgroud)

我必须重新设置所有内容并在此之后再次解决所有合并冲突.

我怎样才能压缩前N个提交而不必解析整个历史记录,包括N + 1提交后的合并冲突.

git rebase

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

Matplotlib RegularPolyCollection 具有静态(类似数据)大小?

是否可以创建具有静态大小的 RegularPolyCollection?

我想以数据单位而不是屏幕单位给出大小。就像偏移量一样。

目标是拥有一个直径为 9.5 毫米的具有 1440 个六边形像素的相机图像。

可以通过循环超过 1440 个多边形来实现这一点,但我没有成功地使用具有很大优势的 PolyCollection 创建它,用于创建颜色图等。

这是我用来绘制静态大小的 1440 个六边形的代码:

for c, x, y in zip(pixel_color, pixel_x, pixel_y):
    ax.add_artist(
        RegularPolygon(
            xy=(x, y),
            numVertices=6,
            radius=4.75,
            orientation=0.,
            facecolor=c,
            edgecolor=edgecolor,
            linewidth=1.5,
        )
    )
Run Code Online (Sandbox Code Playgroud)

并且此代码产生相同但错误且非静态的(就数据而言)大小:

a = 1/np.sqrt(3) * 9.5

collection = RegularPolyCollection(
    numsides=6,
    rotation=0.,   
    sizes=np.ones(1440)*np.pi*a**2,  # tarea of the surrounding circle
    facecolors=pixel_colors,
    edgecolors="g",
    linewidth=np.ones(1440)*1.5,
    offsets=np.transpose([pixel_x, pixel_y]),
    transOffset=self.transData,
)

self.add_collection(collection)
Run Code Online (Sandbox Code Playgroud)

如何利用集合的优势实现六边形的静态大小?

python matplotlib

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

如何使用 cartopy 和 matplotlib 绘制 tissot?

为了绘制天空图,我刚刚从 Basemap 切换到 cartopy,我更喜欢它。

(主要原因是某些计算机上的 Basemap 段错误,我无法修复)。

我唯一挣扎的是得到一个 tissot 圆(用于显示我们望远镜的视锥。)

这是一些绘制随机星星的示例代码(我使用真实的目录):

import matplotlib.pyplot as plt
from cartopy import crs
import numpy as np

# create some random stars:

n_stars = 100
azimuth = np.random.uniform(0, 360, n_stars)
altitude = np.random.uniform(75, 90, n_stars)
brightness = np.random.normal(8, 2, n_stars)

fig = plt.figure()
ax = fig.add_subplot(1,1,1, projection=crs.NorthPolarStereo())
ax.background_patch.set_facecolor('black')

ax.set_extent([-180, 180, 75, 90], crs.PlateCarree())

plot = ax.scatter(
    azimuth,
    altitude,
    c=brightness,
    s=0.5*(-brightness + brightness.max())**2,
    transform=crs.PlateCarree(),
    cmap='gray_r',
)

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

我如何向该图像添加一个以度数为单位的具有特定半径的 tissot 圆? https://en.wikipedia.org/wiki/Tissot%27s_indicatrix

matplotlib cartopy

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

如何避免使用Sphinx复制函数文档?

假设我有以下结构

mypackage
    __init__.py
    core.py
Run Code Online (Sandbox Code Playgroud)

__init__.py

from .core import my_function

__all__ = ['my_function']
Run Code Online (Sandbox Code Playgroud)

core.py

def myfunction():
    ''' really cool function '''
    pass
Run Code Online (Sandbox Code Playgroud)

运行sphinx-apidoc --full -o docspython setup.py build_sphinx 我得到myfunction两次的文档。

如何避免这种重复,最好仅在顶层使用文档(因为这是针对用户的API)。

python python-sphinx

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

标签 统计

matplotlib ×3

python ×3

cartopy ×1

git ×1

linux ×1

python-sphinx ×1

rebase ×1