Как изменить размер диаграммы диаграммы [дубликат]

gogagubi ответ хороший, но шаг 4 не работает для меня, потому что set INCLUDE и LIB не работают для mingw32-make.

Ему нужно установить INCPATH и LIBS в oci.pro или используйте:

qmake "INCPAH +=c:\app\user\product[version]\client_1\oci\include 
       LIBS +=-Lc:\app\user\product[version]\client_1\oci\lib\msvc" oci.pro

Добавьте следующие строки в oci.pro:

INCPATH +=c:\app\user\product[version]\client_1\oci\include
LIBS+=-Lc:\app\user\product[version]\client_1\oci\lib\msvc
129
задан tMC 12 June 2012 в 15:20
поделиться

9 ответов

Это будет зависеть от того, что вы рисуете.

import matplotlib.pyplot as plt

 x=['long_text_for_a_label_a',
    'long_text_for_a_label_b',
    'long_text_for_a_label_c']
y=[1,2,3]
myplot = plt.plot(x,y)
for item in myplot.axes.get_xticklabels():
    item.set_rotation(90)

Для панд и морского дна, которые дают вам объект Axes:

df = pd.DataFrame(x,y)
#pandas
myplot = df.plot.bar()
#seaborn 
myplotsns =sns.barplot(y='0',  x=df.index, data=df)
# you can get xticklabels without .axes cause the object are already a 
# isntance of it
for item in myplot.get_xticklabels():
    item.set_rotation(90)

Если вам нужно повернуть метки, вы может потребоваться изменить размер шрифта, вы можете использовать font_scale=1.0 для этого.

0
ответ дан Ajean 26 August 2018 в 05:37
поделиться

Я придумал аналогичный пример. Опять же, ключевое слово вращения ... ну, это ключ.

from pylab import *
fig = figure()
ax = fig.add_subplot(111)
ax.bar( [0,1,2], [1,3,5] )
ax.set_xticks( [ 0.5, 1.5, 2.5 ] )
ax.set_xticklabels( ['tom','dick','harry'], rotation=45 ) ;
35
ответ дан cjohnson318 26 August 2018 в 05:37
поделиться
import pylab as pl
pl.xticks(rotation = 90)
7
ответ дан Ishan Tomar 26 August 2018 в 05:37
поделиться

Если вы используете plt:

plt.xticks(rotation=90)

В случае использования панд или морского дна, чтобы предположить ax как оси для графика:

ax.set_xticklabels(ax.get_xticklabels(), rotation=90)

Другое способ сделать следующее:

for tick in ax.get_xticklabels():
    tick.set_rotation(45)
1
ответ дан JeeYem 26 August 2018 в 05:37
поделиться

Appart from

plt.xticks(rotation=90)

это также возможно:

plt.xticks(rotation='vertical')
30
ответ дан Matthew 26 August 2018 в 05:37
поделиться

Попробуйте pyplot.setp. Я думаю, вы могли бы сделать что-то вроде этого:

x = range(len(time))
plt.xticks(x,  time)
locs, labels = plt.xticks()
plt.setp(labels, rotation=90)
plt.plot(x, delay)
54
ответ дан opiethehokie 26 August 2018 в 05:37
поделиться

Простой способ

Как , описанный здесь , существует существующий метод в классе matplotlib.pyplot figure, который автоматически поворачивает даты соответствующим образом для вас.

Вы можете вызывать его после того, как вы построили свои данные (например, ax.plot(dates,ydata):

fig.autofmt_xdate()

. Если вам нужно отформатировать ярлыки дальше, проверьте приведенную выше ссылку.

Объекты non-datetime

Согласно комментарию languitar , метод, предложенный мной для не-datetime xticks, не будет корректно обновляться при масштабировании и т. д. Если это а не объект datetime, используемый в качестве ваших данных по оси x, вы должны следовать Ответ Tommy :

for tick in ax.get_xticklabels():
    tick.set_rotation(45)
113
ответ дан ryanjdillon 26 August 2018 в 05:37
поделиться

Это работает для меня:

plt.xticks(rotation=90)
189
ответ дан scottlittle 26 August 2018 в 05:37
поделиться

Мой ответ вдохновлен ответом cjohnson318, но я не хотел поставлять жесткий список ярлыков; Я хотел повернуть существующие метки:

for tick in ax.get_xticklabels():
    tick.set_rotation(45)
27
ответ дан Tommy 26 August 2018 в 05:37
поделиться
Другие вопросы по тегам:

Похожие вопросы: