matplotlib绘图问题

本文介绍了如何使用matplotlib库对Pandas DataFrame进行数据可视化,包括不同类型的图表如直方图、折线图、柱状图等。还讨论了如何将DataFrame的日期列转换为时间序列,以及解决坐标轴尺度和标签显示问题的方法,如使用log尺度和自定义时间轴格式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. dataframe直接绘图
    参考: https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.plot.html
    dataframe画图默认是每一列为一个整体(图例中的一条线),x值是索引值。

1.1 df.plot(kind=‘hist’) 等价于 df.hist(); 但可以df.plot(kind=‘line’) ,并不能df.line()
常用kind:‘line’ : line plot (default)
‘bar’ : vertical bar plot
‘barh’ : horizontal bar plot
‘hist’ : histogram
‘box’ : boxplot
‘kde’ : Kernel Density Estimation plot
‘density’ : same as ‘kde’
‘area’ : area plot
‘pie’ : pie plot
‘scatter’ : scatter plot
‘hexbin’ : hexbin plot

1.2 dataframe的某列变为时间序列值:
df[‘date’] = pd.to_datetime(df[‘date’],format=’%Y-%m-%d’)
1.3 坐标轴标度变成log:
df.plot(logx=True)
df.plot(logy=True)
df.plot(loglog=True)
dataframe直接plot好像不能改变坐标轴的刻度显示不全的问题。

  1. dataframe取列绘图
    2.1 解决x轴显示不完全的问题:
    import matplotlib.dates as mdate

fig1 = plt.figure(figsize=(15,5))
plt.xticks(pd.date_range(‘2019-03-05’,‘2019-04-28’),rotation=90)#设置时间标签显示格式
ax1 = fig1.add_subplot(1,1,1)
ax1.xaxis.set_major_formatter(mdate.DateFormatter(’%Y-%m-%d’))#设置时间标签显示格式
plt.plot(df[‘unique_room_num’],‘o-’)
plt.show()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值