Что означает colorbar.solids в Pyplot? - PullRequest
0 голосов
/ 21 февраля 2019

Я создаю контурные графики с помощью matplotlib / pyplot и пытаюсь также распечатать настраиваемую цветовую панель.Я также пытаюсь, чтобы цветная полоса была напечатана в отдельном графическом файле с графиком.

        sub_fig = plt.figure()
        sub_ax = plt.axes()
        sub_ax.axis("off")
        #cs2 is a contourf object
        sep_cb = plt.colorbar(cs2, cax=sub_ax)#, cax = new_figure.legend, ax=new_figure.legend, orientation="vertical")
        sep_cb.shrink=0.5
        sep_cb.fraction=.1
        sep_cb.drawedges=True
        # ~sep_cb.solids.set_edgecolor("white")
        plt.savefig("colorbar_"+str(ii)+".png")
        plt.clf()

Итак, я ссылаюсь на документацию здесь: https://matplotlib.org/api/_as_gen/matplotlib.pyplot.colorbar.html, но я считаю, что изменение настроек не меняет внешний вид моей цветовой шкалы.На самом деле я хочу сделать его довольно маленьким, чтобы разделы были разделены пробелами со значениями / метками справа.Я не могу сжать это, или заставить значения появляться.Неважно, что это выглядит так:

colorbar

Однако, если я включу эту строку sep_cb.solids, я получу несколько строк между разделами.Но единственная причина, по которой я даже знаю об этом, заключается в следующем:

Известно, что некоторые средства просмотра векторной графики (svg и pdf) отображают белые промежутки между сегментами цветовой полосы.Это связано с ошибками в средствах просмотра, а не в matplotlib.В качестве обходного пути можно отобразить цветовую панель с перекрывающимися сегментами:

cbar = colorbar()
cbar.solids.set_edgecolor("face")
draw()

Кажется, что colorbar.solids можно использовать для установки некоторых параметров на графике, но я не могу найти какую-либо документацию по этому вопросу напрямуюЯ даже не вижу, чтобы это упоминалось в другом месте на странице.Это какая-то базовая вещь, которую мне удалось пропустить?Спасибо за любую помощь, спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...