【问题标题】:Visualisation of boolean data布尔数据的可视化
【发布时间】:2015-04-14 20:27:37
【问题描述】:

我正在做一个表面模拟,其中表面被分成 nxn 个块。我尝试用一​​组规则填充表面。模拟后,我得到一个二维布尔数组输出,例如如果 n=10,我得到

0011111110
0001101111
1011111111
0101100110
0011111100
0011100000
1111100000
0011110010
0000110000
0000110000

我想以正方形图像的形式可视化这些数据,其中所有位置为零的位置都是一种颜色,所有位置为 1 的位置都是另一种颜色。我将布尔数据以 1 和 0 的格式输出到 .txt 文件,如上所示。 java中是否有一些类可以用于这种可视化?我只了解基础知识,因此实施起来应该不会太难。另外,如果有其他语言/程序可以使这个过程更容易,请提出建议。

【问题讨论】:

标签: visualization


【解决方案1】:

我建议将 Python 和 numpy/matplotlib 库用于基本的“热图”。

import matplotlib.pyplot as plt
import numpy as np

np.random.seed(101)
g = np.floor(np.random.random((100, 100)) + .5)

plt.subplot(211)
plt.imshow(g)
plt.subplot(212)
plt.imshow(g, cmap='Greys',  interpolation='nearest')
plt.savefig('blkwht.png')

plt.show()

如果你想使用 Java:

  1. 将您的 Boolean[][] 数组转换为 Byte[][] 数组
  2. 将此 Byte[][] 数组用作图像的 InputStream

    BufferedImage img = ImageIO.read(new ByteArrayInputStream(bytes));

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-02-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-11
    • 2020-07-31
    • 2013-02-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多