相关疑难解决方法(0)

Matplotlib:旋转贴片

我想在matplotlib中旋转一个Rectangle,但是当我应用转换时,矩形不再显示:

rect = mpl.patches.Rectangle((0.0120,0),0.1,1000)
t = mpl.transforms.Affine2D().rotate_deg(45)
rect.set_transform(t)
Run Code Online (Sandbox Code Playgroud)

这是一个已知的错误还是我犯了错误?

python matplotlib

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

如何旋转 matplotlib 地图?

从我从https://s3.amazonaws.com/nyc-tlc/misc/taxi_zones.zip获得的 shapefile 开始,我想绘制曼哈顿区,并为每个出租车区绘制轮廓。

此代码单独轮换每个单独的出租车区域,而不是一次轮换所有。

import geopandas as gpd
from matplotlib import pyplot as plt


fname = "path_to_shapefile.shp"
df = gpd.read_file(fname)
df = df[df['borough'] == "Manhattan"]
glist = gpd.GeoSeries([g for g in df['geometry']])
glist = glist.rotate(90)
glist.plot()
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

[编辑] 我进一步改进了它,以便能够以编程方式旋转图像。但是,如果我添加一个图例,那么它也会被旋转,这是不可取的。仍在寻找更好的解决方案。请注意,还有这个 stackoverflow 帖子(如何将 matplotlib 图旋转 90 度?),但是,旋转图而不是图像的解决方案仅适用于 90 度旋转。

import geopandas as gpd
from matplotlib import pyplot as plt

import numpy as np
from scipy import ndimage
from matplotlib import transforms


fname = "path_to_shapefile.shp"
df = gpd.read_file(fname)
df = …
Run Code Online (Sandbox Code Playgroud)

python matplotlib geopandas

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

Matplotlib将图像文件旋转X度

如何旋转图像文件并在matplotlib中绘制?

我知道我可以使用PIL打开它并旋转它,但这对于这个简单的功能似乎太过分了,我可能没找到.

我在这里发现了这段代码,但似乎不起作用:

from matplotlib import pyplot, image, transforms

img = image.imread('filename.png')

pyplot.ion()
fig = pyplot.figure()
ax = fig.add_subplot(111)

for degree in range(360):
    pyplot.clf()
    tr = transforms.Affine2D().rotate_deg(degree)

    ax.imshow(img, transform=tr)
    fig.canvas.draw()
Run Code Online (Sandbox Code Playgroud)

python image matplotlib

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

在matplotlib中变换整个轴(或散点图)

我正在用以下代码绘制一些数据的均值和方差的变化

import matplotlib.pyplot as pyplot
import numpy

vis_mv(data, ax = None):
    if ax is None: ax = pyplot.gca()
    cmap = pyplot.get_cmap()
    colors = cmap(numpy.linspace(0, 1, len(data)))

    xs = numpy.arange(len(data)) + 1
    means = numpy.array([ numpy.mean(x) for x in data ])
    varis = numpy.array([ numpy.var(x) for x in data ])
    vlim = max(1, numpy.amax(varis))

    # variance
    ax.imshow([[0.,1.],[0.,1.]],
        cmap = cmap, interpolation = 'bicubic',
        extent = (1, len(data), -vlim, vlim), aspect = 'auto'
    )
    ax.fill_between(xs, -vlim, -varis, color = 'white')
    ax.fill_between(xs, varis, …
Run Code Online (Sandbox Code Playgroud)

python transform matplotlib

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

将 matplotlib 图中的图旋转 90 度

我正在尝试将 matplotlib 图内的绘图旋转 90 度。我发现这篇文章,但它使用 pyplot 并且我使用简单的绘图,因此不起作用,而且他没有解释旋转 pyplot 的代码,但提到转换属性也可以用于旋转简单的绘图。我尝试在网上搜索转换教程,但无法理解这个概念。

这是我的代码片段

from matplotlib.figure import Figure
import numpy

# random data
data = numpy.random.randn(100)

# making figure on which plot will be draw
fig = Figure(figsize=(11, 8),dpi=100)
# adding plot to figure
plot1 = fig.add_subplot(111)
# plotting values
plot1.plot(data)

# saving figure for later use
fig.savefig("graph.jpeg")

Run Code Online (Sandbox Code Playgroud)

它产生以下结果;

电流输出

但我想要这样的输出;

所需输出

python matplotlib rotation figure

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

标签 统计

matplotlib ×5

python ×5

figure ×1

geopandas ×1

image ×1

rotation ×1

transform ×1