Chciałbym zmienić kolor osi, jak również znaczniki i znaczniki wartości dla wykresu, który zrobiłem przy użyciu matplotlib i PyQt.Zmiana koloru osi, znaczników i etykiet dla wykresu w matplotlib
Wszelkie pomysły?
Chciałbym zmienić kolor osi, jak również znaczniki i znaczniki wartości dla wykresu, który zrobiłem przy użyciu matplotlib i PyQt.Zmiana koloru osi, znaczników i etykiet dla wykresu w matplotlib
Wszelkie pomysły?
Jako prosty przykład (przy użyciu nieco czystszy sposób niż potencjalnie duplikatu pytanie):
import matplotlib.pyplot as plt
fig = plt.figure()
ax = fig.add_subplot(111)
ax.plot(range(10))
ax.set_xlabel('X-axis')
ax.set_ylabel('Y-axis')
ax.spines['bottom'].set_color('red')
ax.spines['top'].set_color('red')
ax.xaxis.label.set_color('red')
ax.tick_params(axis='x', colors='red')
plt.show()
Dziękuję jak dotąd. ax.tick_params (axis = 'x', colors = 'red') tworzy AxesSubplot nie ma atrybutu "tick_params" błąd. Wiesz dlaczego? –
Hmm ... To dziwne ... Jaką wersję matplotlib używasz? Obejście problemu polega na wykonaniu polecenia '[t.set_color ('red') dla t w ax.xaxis.get_ticklines()]' i '[t.set_color ('red') dla t w ax.xaxis.get_ticklabels()]' . –
Jeśli masz kilka cyfr lub wątków, które chcesz zmodyfikować, może być pomocne używać matplotlib context manager, aby zmienić kolor, zamiast zmieniać je pojedynczo. Menedżer kontekstów pozwala tymczasowo zmienić parametry rc tylko dla kodu następującego bezpośrednio po wcięciu, ale nie ma wpływu na globalne parametry rc.
W tym fragmencie podajemy dwie liczby, pierwszą z zmodyfikowanymi kolorami dla osi, tyknięć i znaczników, a drugą z domyślnymi parametrami rc.
import matplotlib.pyplot as plt
with plt.rc_context({'axes.edgecolor':'orange', 'xtick.color':'red', 'ytick.color':'green', 'figure.facecolor':'white'}):
# Temporary rc parameters in effect
fig, (ax1, ax2) = plt.subplots(1,2)
ax1.plot(range(10))
ax2.plot(range(10))
# Back to default rc parameters
fig, ax = plt.subplots()
ax.plot(range(10))
Można wpisać plt.rcParams
, aby wyświetlić wszystkie dostępne parametry RC i używać listowych do wyszukiwania słów kluczowych:
# Search for all parameters containing the word 'color'
[(param, value) for param, value in plt.rcParams.items() if 'color' in param]
Duplikat dla osi: http: //stackoverflow.com/questions/1982770/matplotlib-changing-the-color-of-an-axis – Mark