开发者社区> 问答> 正文

Matplotlib未在PyCharm中显示

在Windows 10的PyCharm中使用Python 3

我有一个需要绘制的元组列表。但是matplotlib显示一个空图:

import matplotlib as mpl
import matplotlib.pyplot as plt
mpl.use('TkAgg')

input = [(1, 6), (4, 15), (7, 7), (10, 13), (11, 6),
         (11, 18), (11, 21), (12, 10), (15, 18),
         (16, 6), (18, 3), (18, 12), (19, 15), (22, 19)]


class Point:
    def __init__(self, x, y):
        self.x = x
        self.y = y


input_points = []
for array_x, array_y in input:
    input_points.append(Point(array_x, array_y))
    plt.plot(array_x, array_y)
plt.show()

如何获得要显示的点并在图中绘制?

问题来源:stackoverflow

展开
收起
is大龙 2020-03-25 00:13:08 624 0
1 条回答
写回答
取消 提交回答
  • 要绘制线条,plt.plot需要一个x位置的列表(或numpy数组)和一个y位置的列表。文档列出了用于绘制标记和/或线条的不同选项。

    列表理解是从xy坐标列表中提取x或y位置的便捷方法。

    import matplotlib.pyplot as plt
    
    input_points = [(1, 6), (4, 15), (7, 7), (10, 13), (11, 6),
                    (11, 18), (11, 21), (12, 10), (15, 18),
                    (16, 6), (18, 3), (18, 12), (19, 15), (22, 19)]
    array_x = [x for x, y in input_points]
    array_y = [y for x, y in input_points]
    plt.plot(array_x, array_y, marker='o', color='crimson', linestyle='-')
    plt.show()
    

    回答来源:stackoverflow

    2020-03-25 00:13:17
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载