【问题标题】:Take a list of coordinates and plot them on a graph获取坐标列表并将它们绘制在图表上
【发布时间】:2015-08-20 23:47:04
【问题描述】:

现在我有一个坐标列表,格式如下:

(1,12),(2,3),(3,9)....

所有坐标如上括号中,其余字符串格式完全相同(列表为字符串格式)。坐标的 x 值在整个字符串中增加 1(甚至可以持续到 100000。y 值是随机的,范围可以从 1 到 2048 甚至更大的数字。我想找到一种方法来获取该字符串(这是上述格式的坐标列表)并将其转换为图片或虚拟图形,每个点都绘制在其上。我目前在 Visual Studio 中使用 Python 2.7,但我愿意使用其他程序作为字符串本身以上述格式存储在一个.txt文件中。

完成后,我希望能够获取该图并仅将其用作基点,从而能够再次重新生成整个字符串。

【问题讨论】:

    标签: python string graph plot graph-algorithm


    【解决方案1】:

    您可以使用matplotlib 进行绘图并使用ast.literal_eval 评估您的字符串:

    import matplotlib.pylab as plt
    from ast import literal_eval
    from operator import itemgetter
    
    with open("your_file") as f:
        lst = literal_eval(f.read())
        x,y = map(itemgetter(0),lst), map(itemgetter(1),lst)
        plt.plot(x,y)
        plt.show()
    

    【讨论】:

    • 漂亮,这段代码非常适合我正在尝试做的事情。不过,我的问题是,我怎样才能将该代码恢复到我的坐标列表?
    • @ShivanshVij, lst = literal_eval(f.read()) 保存您的元组列表
    • 不,我的意思是只使用 plt.show() 命令(因为当该命令执行时,它允许我将图形保存为不同的文件类型,包括 png 和其他类型)。我需要能够仅使用该保存的文件(png 或不使用)并将其转回元组列表。
    • 将 png 转换为坐标列表?
    • 不一定是 png。我可以选择将其保存为 .png、.eps、.pdf、.pgf、.ps、.raw、.rgba、.svg、.svgz 我在想 .ps(后记),因为它实际上已经是文本,并使用它会起作用。我只是不知道怎么做。如果我上传可保存的格式会有帮助吗?
    猜你喜欢
    • 2021-11-19
    • 2014-06-17
    • 2021-06-28
    • 1970-01-01
    • 2023-01-30
    • 1970-01-01
    • 1970-01-01
    • 2023-04-01
    • 1970-01-01
    相关资源
    最近更新 更多