Czy można utworzyć wykres konturowy wMatplitlib z każdą n-tą linią innego koloru niż reszta? Chciałbym to mieć, ponieważ mniej konturów pokazuje zbyt mało szczegółów, a ten sam kolor sprawia, że jest zbyt zatłoczony. Na przykład:
Odpowiedzi:
4 dla odpowiedzi № 1Tak, możesz. Musisz określić kolory dla każdego poziomu:
levels = np.logspace(0, np.log10(Z.max()), 100 )[30:80]
color_levels = ["r" if (i+5) % 10 == 0 else "k" for i in range(len(levels))]
pyplot.contour(X, Y, Z, locator=ticker.LogLocator(), colors=color_levels, levels=levels, lw=2, norm=colors.LogNorm(), vmin=1, vmax=Z.max())
Tutaj jest Z
wyniki np.histogram2d()
. Bazowy histogram2d jest wykreślany za pomocą imshow
. The [30:80]
plasterek na poziomach ma zapobiec zaśmiecaniu pośrodku i krawędzi obrazu.
Oczywiście możesz edytować % 10
w definicji color_levels
na każdą liczbę całkowitą, którą lubisz.
To skutkuje: