Robię niektóre wykresy rozrzutu przy użyciu Matplotlib (python 3.4.0, matplotlib 1.4.3, działający pod Linux Mint 17). Łatwo ustawić przezroczystość alfa dla każdego punktu osobno; czy istnieje sposób na ustawienie ich jako grupy, tak aby dwa nakładające się punkty z tej samej grupy nie zmieniały koloru?Jak sprawić, by wykresy rozrzutu Matplotlib były przezroczyste jako grupa?
Przykładowy kod:
import matplotlib.pyplot as plt
import numpy as np
def points(n=100):
x = np.random.uniform(size=n)
y = np.random.uniform(size=n)
return x, y
x1, y1 = points()
x2, y2 = points()
fig = plt.figure(figsize=(4,4))
ax = fig.add_subplot(111, title="Test scatter")
ax.scatter(x1, y1, s=100, color="blue", alpha=0.5)
ax.scatter(x2, y2, s=100, color="red", alpha=0.5)
fig.savefig("test_scatter.png")
Wyniki w tego wyjścia:
ale chcę czegoś więcej jak ten:
mogę Obejście przez zapisywanie jako SV G i ręczne grupowanie, następnie w Inkscape, a następnie ustawianie przezroczystości, ale naprawdę wolałbym coś, co mogę kodować. Jakieś sugestie?
Prawdopodobnie dlatego, że robi to, co sprzeczne rozrzutu jest zazwyczaj stara się pokazać. – cphlewis