2017-04-22 8 views
0

色を区別するために色を使うことができないので、異なる線のスタイルを使って複数のヒストグラムをプロットしたい。私はそれを得るが、まだ、2つのプロットが非常に似通った分布をしているので、これらは非常によく似ている。ドット、星などのマーカーや、これらを識別するためのより良い方法を得ることができますか? これは私が異なる線のスタイルを使って複数のヒストグラムをプロットするpython

import matplotlib 
matplotlib.use('PS') 
import matplotlib.pyplot as plt 
plt.hist(values1, histtype='step', linestyle=':',label=topic1) 
plt.hist(values2, histtype='step', linestyle='--',color=color, label=topic2) 
plt.hist(values3,histtype='step', linestyle='solid', label=topic3) 

plt.legend(loc="upper right") 
plt.legend(frameon=False) 
plt.show() 
plt.savefig(allplotfile) 
plt.close() 

enter image description here

答えて

2

持っているものあなたは、例えば、を孵化を使用することですhatch="\\\\"histに呼び出してください。私はそれがより良く見えるとは確信していませんが、少なくともオプションです。

enter image description here

import matplotlib.pyplot as plt 
plt.style.use("grayscale") 
import numpy as np; np.random.seed(1) 
plt.rcParams["figure.figsize"] = (4,3) 

vals = np.arange(2,5.1,0.5) 
p = np.array([1,.2,.36,.15,.38,.28,.4]) 
p = p/np.sum(p) 
a = np.random.choice(vals, size=100, p=p) 
b = np.random.choice(vals, size=100, p=p) 
c = np.random.choice(vals, size=100, p=p) 


plt.hist(a, histtype='step', linestyle=':',label="topic1", hatch="\\\\") 
plt.hist(b, histtype='step', linestyle='--', label="topic2", hatch="//") 
plt.hist(c,histtype='step', linestyle='solid', label="topic3", hatch="++") 

plt.legend(loc="upper right") 
plt.legend(frameon=False) 
plt.show() 

異なる線幅も役立つことがあります。lw=2など、
(ここで私は線幅として123を使用)

enter image description here

異なるSH

plt.hist(a, linestyle=':', color=plt.cm.gray(0.1), alpha=0.5) 
plt.hist(b, linestyle='--' ,color=plt.cm.gray(0.4), alpha=0.5) 
plt.hist(c, linestyle='solid', color=plt.cm.gray(0.8), alpha=0.5) 

enter image description here

グレーののADEは、
設定も役立つかもしれ アルファと結合します
関連する問題