条形图与Matplotlib

条形图与Matplotlib

问题描述:

我有一个CSV文件(Data.csv):条形图与Matplotlib

2012-01-01,0 
2012-01-02,1 
2012-01-03,8 
2012-01-04,1 
...etc 

我试图做一个柱状图,在y轴上x轴上的日期和值:

import numpy as np 
import matplotlib.pyplot as plt 
import matplotlib.dates as mdates 

def graph(): 
    date, value = np.loadtxt('Data.csv', delimiter=',', unpack=True, 
     converters = {0: mdates.strpdate2num('%Y-%m-%d')}) 

    fig = plt.figure() 

    ax1 = fig.add_subplot(1,1,1, axisbg='white') 

    plt.plot_date(x=date, y=value, fmt='-') 

    plt.title('Title') 
    plt.ylabel('Value') 
    plt.xlabel('Date') 
    plt.show() 

graph() 

不幸的是,这是一个折线图。

请问有人能协助吗?

的matplotlib文档有一个很好的例子:barchart_demo.py

这应做到:

fig, ax = plt.subplots() 

bar1 = ax.bar(date, value) 

plt.title('Title') 
plt.ylabel('Value') 
plt.xlabel('Date') 
plt.show() 
+0

谢谢 - 非常有用的。然而,这个解决方案摆脱了附带'plt.plot_date(x = date,y = value,fmt ='b')'的x轴刻度标签。有什么方法可以重新纳入? – Craig 2014-10-20 13:57:53