使用Matplotlib绘制线和散点图?
我现在正在使用 matplotlib
来可视化我正在处理的一些数据。我想在同一个图表上绘制大约6500个点和一条直线 y = x
,但在这方面遇到了一些麻烦。我似乎只能显示这些点,而无法显示那条线。我知道 matplotlib
不是直接绘制方程,而是绘制一组点,所以我试着用相同的一组点作为 x 和 y 坐标来生成那条线。
以下是我的代码
from matplotlib import pyplot
import numpy
from pymongo import *
class Store(object):
"""docstring for Store"""
def __init__(self):
super(Store, self).__init__()
c = Connection()
ucd = c.ucd
self.tweets = ucd.tweets
def fetch(self):
x = []
y = []
for t in self.tweets.find():
x.append(t['positive'])
y.append(t['negative'])
return [x,y]
if __name__ == '__main__':
c = Store()
array = c.fetch()
t = numpy.arange(0., 0.03, 1)
pyplot.plot(array[0], array[1], 'ro', t, t, 'b--')
pyplot.show()
任何建议都非常感谢,
Patrick
1 个回答
3
如果我说错了请纠正我(我对matplotlib不是很专业),但是't'的值会是[0.]。
t = numpy.arange(0.,0.03,1)
这意味着从0开始,到0.03(不包括0.03)结束,步长为1。结果就是一个只包含0的数组。
在这种情况下,你只是绘制了一个点。要画出一条线,至少需要两个点。