Python 修复Matplotlib图形上X轴值的重叠
我需要一些关于Matplotlib图的帮助。可以查看项目(当前在新的图形分支下工作) 作为本项目工作的总结:Python 修复Matplotlib图形上X轴值的重叠,python,pandas,matplotlib,graph,statistics,Python,Pandas,Matplotlib,Graph,Statistics,我需要一些关于Matplotlib图的帮助。可以查看项目(当前在新的图形分支下工作) 作为本项目工作的总结: 下载两个CSV文件(英国新冠病毒-19病例和英国新冠病毒-19死亡) 将CSV文件解析为一个数据框,以便只包含带有日期和累积值的列 使用Matplotlib条形图在一个图形上绘制这两组数据 我的问题是Matplotlib不会自动隔开X轴值(日期)。我不确定这是否是因为Matplotlib无法将它们识别为日期或我犯的其他错误。 编辑: 对不起,我忘了在问题中添加代码。这是 impor
- 下载两个CSV文件(英国新冠病毒-19病例和英国新冠病毒-19死亡)
- 将CSV文件解析为一个数据框,以便只包含带有日期和累积值的列
- 使用Matplotlib条形图在一个图形上绘制这两组数据
import matplotlib.pyplot as plt
def plot(cases,deaths):
#cases.plot(x='Specimen date',y='Cumulative lab-confirmed cases',color='green')
#deaths.plot(x='Reporting date',y='Cumulative deaths',color='red')
plt.figure("Cumulative deaths and cases")
ax = plt.gca()
cases.plot(kind='bar', x='Specimen date', y='Cumulative lab-confirmed cases',ax=ax, color='green')
deaths.plot(kind='bar', x='Reporting date', y='Cumulative deaths', ax=ax, color='red')
plt.show()
您可能希望使用以下函数使XTICK变小:
plt.xticks(fontsize=所需大小)
问题在于,对于绘图的大小,您有太多的勾号标签
我建议间隔刻度,这样它就适合你的绘图了。这可以通过setxticks
从Axis.Axis
完成。例如,在下面的示例中,我每5次出现一个勾号
为了进一步提高可读性,我还包括在刻度标签上旋转45度。请注意此处的参数ha=“right”
。它用于确保标签的右侧部分与记号对齐
def plot(cases, deaths):
plt.figure("Cumulative deaths and cases")
ax = plt.gca()
cases.plot(kind='bar', x='Specimen date', y='Cumulative lab-confirmed cases', ax=ax, color='green')
deaths.plot(kind='bar', x='Reporting date', y='Cumulative deaths', ax=ax, color='red')
ax.xaxis.set_ticks(range(0, len(cases), 5))
ax.set_xticklabels(ax.get_xticklabels(), rotation=45, ha="right")
plt.show()
请在问题主体中包含您的代码,以便于人们帮助您。请完全忘记这一点。我已经修好了,对不起!你好,谢谢你的回复。如果我增加窗口的大小,这似乎是一个很好的解决办法。有没有办法把它们隔开?例如2020年3月21日。。。23/03/2020 ... (而不是它们都沿着轴?@SpiritedByte您可以使用
plt.xticks()
函数中的参数rotation
使刻度水平,如果您需要的话。如果你想让记号出现在多行上,也许这篇文章很有用。