@@ -216,7 +216,6 @@ const GroundEmbedding: React.FC<MessageProps> = forwardRef((props, ref) => {
|
|||||||
|
|
||||||
workerRef.current!.onmessage = (event: MessageEvent) => {
|
workerRef.current!.onmessage = (event: MessageEvent) => {
|
||||||
const { scatterData, embeddingData } = event.data;
|
const { scatterData, embeddingData } = event.data;
|
||||||
console.log('scatterData', scatterData);
|
|
||||||
setScatterData(scatterData);
|
setScatterData(scatterData);
|
||||||
setEmbeddingData(embeddingData);
|
setEmbeddingData(embeddingData);
|
||||||
setLoading(false);
|
setLoading(false);
|
||||||
|
|||||||
@@ -1,27 +1,6 @@
|
|||||||
import _ from 'lodash';
|
import _ from 'lodash';
|
||||||
import { PCA } from 'ml-pca';
|
import { PCA } from 'ml-pca';
|
||||||
|
|
||||||
const normalize2D = (data: number[][]) => {
|
|
||||||
const dim = data[0].length;
|
|
||||||
const mins = Array(dim).fill(Infinity);
|
|
||||||
const maxs = Array(dim).fill(-Infinity);
|
|
||||||
|
|
||||||
for (const row of data) {
|
|
||||||
for (let i = 0; i < dim; i++) {
|
|
||||||
mins[i] = Math.min(mins[i], row[i]);
|
|
||||||
maxs[i] = Math.max(maxs[i], row[i]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return data.map((row) =>
|
|
||||||
row.map((val, i) => {
|
|
||||||
const range = maxs[i] - mins[i];
|
|
||||||
if (range === 0) return 0;
|
|
||||||
return ((val - mins[i]) / range) * 2 - 1;
|
|
||||||
})
|
|
||||||
);
|
|
||||||
};
|
|
||||||
|
|
||||||
self.onmessage = (
|
self.onmessage = (
|
||||||
event: MessageEvent<{
|
event: MessageEvent<{
|
||||||
embeddings: any[];
|
embeddings: any[];
|
||||||
@@ -50,9 +29,7 @@ self.onmessage = (
|
|||||||
...fileList.map((item) => item.text).filter((item) => item)
|
...fileList.map((item) => item.text).filter((item) => item)
|
||||||
];
|
];
|
||||||
|
|
||||||
const normalizedData = normalize2D(pcadata);
|
const list = pcadata.map((item: number[], index: number) => {
|
||||||
|
|
||||||
const list = normalizedData.map((item: number[], index: number) => {
|
|
||||||
return {
|
return {
|
||||||
value: item,
|
value: item,
|
||||||
name: index + 1,
|
name: index + 1,
|
||||||
|
|||||||
Reference in New Issue
Block a user