我是机器学习新手。我正在自学使用 MATPLOTLIB 进行数据可视化。我的代码非常简单。
- 它需要一个 shape=(1, 100) 的 numpy 数组 (x = np.random.rand(1,100))。
- 它将 numpy 数组 x 转换为 y(y = np.sin(x))。
- 最终任务是在 BAR 中将其可视化(plt.bar(x, y, label="BAR", color='r'))
但它抛出VALUE ERROR。尽管这个问题已经有了答案,但到目前为止似乎没有一个对我有用。
此问题的一个答案By unutbu
他解释说,“每当尝试在 bool 上下文中计算数组时”都会引发此错误。 我无法理解如何将这些数组用作 bool 值?
我的代码:
import matplotlib.pyplot as plt
import numpy as np
#arguments are shape: 1=row; 100=columns
x = np.random.rand(1, 100)
y = np.cos(x)
#bars
plt.bar(x, y, label='Bars1', color='pink')
#legends
plt.legend()
#show the figure
plt.show()
最佳答案
您需要更换
x = np.random.rand(1, 100)
与
x = np.random.rand(100)
原因是前者给你一个数组的数组(里面有一个数组,但它总体上仍然是一个维度为 1×100 的二维数组),而后者给你一个一维数组(长度为 100 )。为了使用 plt
对其进行可视化,您需要后者。
关于python - 数据可视化: Matplotlib and Numpy throwing value error,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44754852/