【问题标题】:Matplotlib unaligned values and names of graphs [duplicate]Matplotlib未对齐的值和图形名称[重复]
【发布时间】:2021-08-14 17:03:11
【问题描述】:

美好的一天!我正在制作一个 django 应用程序,它可以从文本文档中绘制图表。在文本文档中,数据是这样对齐的:

name 10
name_2 20
name_3 100
typeofthegrah

我只是用空格分隔所有内容并放入 2 个列表(名称和值),然后我只是执行 plt.bar(names, values) 并得到类似 的内容

name1 189
name2 149 
name3 23
name4 82
name5 245
name6 90
column

我尝试使用zip 对它们进行排序,但没有成功。如果我将其绘制为饼图但线性图和条形图已损坏,则效果很好。

【问题讨论】:

    标签: python django matplotlib web


    【解决方案1】:

    要绘制的值作为字符串读入,这就是 y 轴被破坏的原因。尝试使用以下方法将值转换为 int 或 float:

    values = [float(x) for x in values]
    

    【讨论】:

    • 非常感谢!我刚刚实现了一个函数来检查某些字符串是否可以转换为浮点数,但我实际上并没有进行转换。
    【解决方案2】:

    这是您的解决方案:

    import matplotlib.pyplot as plt
    import numpy as np
    
    x = np.array(["name1", "name2", "name3", "name4", "name5", "name6"])
    y = np.array([189, 149, 23, 82, 245, 90])
    
    plt.bar(x,y)
    plt.show()
    

    【讨论】:

      猜你喜欢
      • 2018-06-19
      • 2020-09-17
      • 1970-01-01
      • 2012-12-03
      • 2021-01-31
      • 1970-01-01
      • 2020-09-05
      • 2018-07-20
      • 1970-01-01
      相关资源
      最近更新 更多