График линии и разброс точек с помощью Matplotlib? - PullRequest
0 голосов
/ 16 июня 2010

Я сейчас использую 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 голосов
/ 16 июня 2010

Исправьте меня, если я не прав (я не профессионал в matplotlib), но 't' просто получит значение [0.].

t = numpy.arange(0.,0.03,1)

Это означает, что начинать с 0 и переходить к 0,03 (не включительно) с размером шага 1. В результате получается массив, содержащий всего 0.

В этом случае вы просто строите одну точку. Требуется два, чтобы сделать линию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...