相关疑难解决方法(0)

使用从colormap中获取的颜色绘制直方图

我想绘制一个简单的一维直方图,其中条形应遵循给定色图的颜色编码.

这是一个MWE:

import numpy as n
import matplotlib.pyplot as plt

# Random gaussian data.
Ntotal = 1000
data = 0.05 * n.random.randn(Ntotal) + 0.5

# This is  the colormap I'd like to use.
cm = plt.cm.get_cmap('RdYlBu_r')

# Plot histogram.
n, bins, patches = plt.hist(data, 25, normed=1, color='green')

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

输出这个:

在此输入图像描述

green我希望这些列不是用于整个直方图的颜色,而是遵循由定义的颜色映射cm和颜色值给出的颜色编码bins.根据所选择的色彩图,这意味着接近于零(不在高度但在位置上)的箱应该看起来更蓝并且更接近一个更红RdYlBu_r.

由于plt.histo没有cmap参数,我不知道如何告诉它使用中定义的色彩映射cm.

python matplotlib histogram

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

如何在matplotlib中将数字转换为色阶?

我正在制作条形图,我希望条形图的颜色根据颜色渐变从红色变为蓝色.我有一个数据框的维度,告诉我在每个条形应该是红蓝色的比例.我目前的方法是通过RGB红色和蓝色之间的线性插值手动将这些值转换为RGB颜色,但我想要一种自动方式将我的数值转换为色标.我还需要能够使用颜色条图例来帮助解释它.

python colors matplotlib

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

Barplot根据色彩图进行着色?

首先,我对Matplotlib或Seaborn的颜色很新.我的目的是创建一个条形图,其条形图根据自定义调色板着色.这样的东西,但我的自定义调色板(见下面,红色,橙色,绿色和蓝色的调色板):

barplot

我已经使用该LinearSegmentedColormap方法创建了自定义顺序调色板,但我无法在简单中使用它plt.barplot().当然不难,但我看不出路.我使用下面的函数创建了调色板,从这个线程获得:使用matplotlib创建自己的颜色图并绘制颜色比例

def make_colormap(seq):
"""Return a LinearSegmentedColormap
seq: a sequence of floats and RGB-tuples. The floats should be increasing
and in the interval (0,1).
"""
seq = [(None,) * 3, 0.0] + list(seq) + [1.0, (None,) * 3]
cdict = {'red': [], 'green': [], 'blue': []}
for i, item in enumerate(seq):
    if isinstance(item, float):
        r1, g1, b1 = seq[i - 1]
        r2, g2, b2 = seq[i + 1]
        cdict['red'].append([item, r1, r2])
        cdict['green'].append([item, g1, g2])
        cdict['blue'].append([item, …
Run Code Online (Sandbox Code Playgroud)

python plot matplotlib seaborn

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

标签 统计

matplotlib ×3

python ×3

colors ×1

histogram ×1

plot ×1

seaborn ×1