Кажется, есть много вопросов об этой проблеме с java.util.Scanner
. Я думаю, что более читаемым / идиоматическим решением было бы вызвать scanner.skip("[\r\n]+")
, чтобы удалить любые символы новой строки после вызова nextInt()
.
ИЗМЕНИТЬ: как показано ниже, как @PatrickParker, это вызовет бесконечный цикл, если пользовательские входы любые пробелы после номера. См. Их ответ на лучший шаблон для использования с пропуском: https://stackoverflow.com/a/42471816/143585
Просто измените ваш вызов xticks
на:
plt.xticks(df.index, df['m_srcaddr'], rotation=90)
Первый аргумент дает места для размещения тиков (df.index
здесь эквивалентно np.arange(len(df))
, но если ваш индекс не равномерно распределен, используйте arange). Второй аргумент дает метки метки.
matplotlib.pyplot.xticks(
*args, **kwargs
)
Получить или установить x- пределы текущих мест размещения меток и меток.
# return locs, labels where locs is an array of tick locations and # labels is an array of tick labels. locs, labels = xticks() # set the locations of the xticks xticks( arange(6) ) # set the locations and labels of the xticks xticks( arange(5), ('Tom', 'Dick', 'Harry', 'Sally', 'Sue') )
Ключевыми словами args, если они есть, являются свойства Text . Например, чтобы повернуть длинные метки:
blockquote>xticks( arange(12), calendar.month_name[1:13], rotation=17 )