今天,我试图在android中使用Any图表库创建一个2d热图图。我无法将序色转换为线性颜色。有人能帮我一下吗。
短信息:
在Android工作室中设置gradle:
allprojects {
repositories {
google()
jcenter()
maven { url 'https://jitpack.io' }
}}
dependencies {
implementation 'com.android.support:multidex:1.0.3'
implementation 'com.github.AnyChart:AnyChart-Android:1.1.2'热图创建:
HeatMap heatmaps = AnyChart.heatMap();
List<DataEntry> data = new ArrayList<>();热图数据输入:
for (int i = 0; i < 1; i++) {
for (int j = 0; j < nx; j++) {
for (int k = 0; k < nx; k++) {
data.add(new HeatDataEntry(j + "", k + "", Pressure[i][j][k]));
}
}
}最终情节:
String[] strArray3 = {"#90caf9", "#ffb74d", "#d84315"};
heatmaps.colorScale().colors(strArray3);
heatmaps.data(data);
AnyChartView anyChartView = (AnyChartView) findViewById(R.id.any_chart_view);
anyChartView.setChart(heatmaps);如何消除每个颜色块之间的空白?
谢谢你的帮助。
完整代码:
int nx=100;
int[][][] Pressure=new int[1][nx][nx];
for (int i=0;i<1;i++) {
for (int j=0;j<nx;j++) {
for (int k=0;k<nx;k++) {
Pressure[i][j][k] = 50;
}
}
}
for (int i=0;i<1;i++) {
for (int j=nx/2-5;j<=nx/2+5;j++) {
for (int k=nx/2-5;k<=nx/2+5;k++) {
Pressure[i][j][k] = 20;
}
}
}
for (int i=0;i<1;i++) {
for (int j=nx/2-3;j<=nx/2+3;j++) {
for (int k=nx/2-3;k<=nx/2+3;k++) {
Pressure[i][j][k] = 2;
}
}
}
HeatMap heatmaps = AnyChart.heatMap();
List<DataEntry> data = new ArrayList<>();
for (int i = 0; i < 1; i++) {
for (int j = 0; j < nx; j++) {
for (int k = 0; k < nx; k++) {
data.add(new HeatDataEntry(j + "", k + "", Pressure[i][j][k]));
}
}
}
String[] strArray3 = {"#90caf9", "#ffb74d", "#d84315"};
heatmaps.colorScale().colors(strArray3);
heatmaps.data(data);
AnyChartView anyChartView = (AnyChartView) findViewById(R.id.any_chart_view);
anyChartView.setChart(heatmaps);发布于 2020-09-04 07:45:41
目前,任何图表都没有在热图中使用线性颜色的能力,所以我们可以使用,
HeatMap heatmaps = AnyChart.heatMap();
heatmaps.stroke("none"); 移除两种颜色之间的白色笔画。
资料来源:任何图表支持。
https://stackoverflow.com/questions/63716146
复制相似问题