为什么第二个x轴记号标签不旋转(matplotlib)? |
您所在的位置:网站首页 › rggplot2修改x和y轴刻度 › 为什么第二个x轴记号标签不旋转(matplotlib)? |
我正在尝试用matplotlib绘制一个简单的图表。我在纵轴上有数字,在横轴上有日期。由于某些原因,我无法理解,第二个x轴刻度标签拒绝旋转。其余的记号标签可以正常旋转。如果我改变我的数据,同样的事情也会发生……总是第二个刻度标签拒绝旋转。我无计可施了。下面是我的代码: import datetime import matplotlib.pyplot as plt from matplotlib.backends.backend_pdf import PdfPages from matplotlib.dates import MonthLocator, DateFormatter import matplotlib.ticker as ticker plt.rcdefaults() fig, ax = plt.subplots() fig.set_size_inches(6.5, 3) # Example data values = [ 270, 318, 349, 322, 433, 444, 459, 481, 449, 558, 575, 843] dlist = [ datetime.datetime(2020,10,1), datetime.datetime(2020,11,1), datetime.datetime(2020,12,1), datetime.datetime(2021,1,1), datetime.datetime(2021,2,1), datetime.datetime(2021,3,1), datetime.datetime(2021,4,1), datetime.datetime(2021,5,1), datetime.datetime(2021,6,1), datetime.datetime(2021,7,1), datetime.datetime(2021,8,1), datetime.datetime(2021,9,1)] ax.set_box_aspect(.25) ax.xaxis.set_major_locator(MonthLocator(interval=1)) ax.xaxis.set_major_formatter(DateFormatter('%b %Y')) ax.yaxis.set_major_locator(ticker.FixedLocator([0, 200, 400, 600, 800, 1000])) plt.setp(ax.get_xticklabels(), fontsize=8, rotation=45, ha='right') plt.setp(ax.get_yticklabels(), fontsize=8) ax.set_ylabel('Attack Volume', fontsize=10) ax.set_xlim(dlist[0], dlist[-1]) ax.set_ylim(0,1000) ax.grid(True) ax.set_title('Figure 1: Attack Volume Trend', fontsize=12) ax.plot(dlist, values, 'o-') plt.show()这是我所看到的: 抱歉的链接,而不是嵌入的图像-我是一个新的StackOverflow用户,所以他们不会让我嵌入任何东西。我做错了什么? 我在MacOS Big Sur 11.5.2 (20G95)上使用matplotlib-3.4.3。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |