Я работаю с сюжетом в JavaScript и наткнулся на проблему, связанную с автоматической масштабной осью Y. Тем не менее, это подводит меня к другой проблеме: теперь ось Y-диапазона слайдера является автоматической масштабированием, и я не могу ее исправить. Код? < /p>
const x_h = JSON.parse(document.getElementById('x_h').textContent);
const y_h = JSON.parse(document.getElementById('y_h').textContent);
const x_l = JSON.parse(document.getElementById('x_l').textContent);
const y_l = JSON.parse(document.getElementById('y_l').textContent);
const y_laser_inverted = y_l.map(val => -val);
const y_h_min = Math.min(...y_h);
const y_h_max = Math.max(...y_h);
const data = [
// Laser
{
x: x_l,
y: y_laser_inverted,
// type: 'scatter',
mode: 'lines',
line: { color: 'red', width: 3 },
name: 'Laser',
xaxis: 'x',
yaxis: 'y'
},
// Hitran
{
x: x_h,
y: y_h,
// type: 'scatter',
mode: 'lines',
line: { color: 'yellow', width: 2 },
name: 'Hitran',
xaxis: 'x2',
yaxis: 'y2'
}
];
const layout = {
grid: {
rows: 2,
columns: 1,
subplots: [['xy'], ['x2y2']],
roworder: 'top to bottom'
},
height: 900,
plot_bgcolor: 'rgba(0,0,0,0)',
paper_bgcolor: 'rgba(0,0,0,0.5)',
font: { color: 'white', size: 14 },
xaxis: { visible: false },
yaxis: { title: 'Laser' },
xaxis2: {
title: 'Wellenlänge (Hitran)',
rangeslider: {
visible: true,
yaxis: {
range: [y_h_min, y_h_max],
rangemode: 'fixed'
}
}
},
yaxis2: {
title: 'Hitran',
}
};
Plotly.newPlot('graph', data, layout);
function updateYRange(currentRange) {
const x_start = currentRange[0];
const x_end = currentRange[1];
const y_values_in_range = y_h.filter((value, index) => x_h[index] >= x_start && x_h[index]
Подробнее здесь: https://stackoverflow.com/questions/795 ... ixed-range
Как я могу установить ось Y диапазона в слое в фиксированном диапазоне ⇐ Javascript
Форум по Javascript
1744182569
Anonymous
Я работаю с сюжетом в JavaScript и наткнулся на проблему, связанную с автоматической масштабной осью Y. Тем не менее, это подводит меня к другой проблеме: теперь ось Y-диапазона слайдера является автоматической масштабированием, и я не могу ее исправить. Код? < /p>
const x_h = JSON.parse(document.getElementById('x_h').textContent);
const y_h = JSON.parse(document.getElementById('y_h').textContent);
const x_l = JSON.parse(document.getElementById('x_l').textContent);
const y_l = JSON.parse(document.getElementById('y_l').textContent);
const y_laser_inverted = y_l.map(val => -val);
const y_h_min = Math.min(...y_h);
const y_h_max = Math.max(...y_h);
const data = [
// Laser
{
x: x_l,
y: y_laser_inverted,
// type: 'scatter',
mode: 'lines',
line: { color: 'red', width: 3 },
name: 'Laser',
xaxis: 'x',
yaxis: 'y'
},
// Hitran
{
x: x_h,
y: y_h,
// type: 'scatter',
mode: 'lines',
line: { color: 'yellow', width: 2 },
name: 'Hitran',
xaxis: 'x2',
yaxis: 'y2'
}
];
const layout = {
grid: {
rows: 2,
columns: 1,
subplots: [['xy'], ['x2y2']],
roworder: 'top to bottom'
},
height: 900,
plot_bgcolor: 'rgba(0,0,0,0)',
paper_bgcolor: 'rgba(0,0,0,0.5)',
font: { color: 'white', size: 14 },
xaxis: { visible: false },
yaxis: { title: 'Laser' },
xaxis2: {
title: 'Wellenlänge (Hitran)',
rangeslider: {
visible: true,
yaxis: {
range: [y_h_min, y_h_max],
rangemode: 'fixed'
}
}
},
yaxis2: {
title: 'Hitran',
}
};
Plotly.newPlot('graph', data, layout);
function updateYRange(currentRange) {
const x_start = currentRange[0];
const x_end = currentRange[1];
const y_values_in_range = y_h.filter((value, index) => x_h[index] >= x_start && x_h[index]
Подробнее здесь: [url]https://stackoverflow.com/questions/79563683/how-can-i-set-the-y-axis-of-a-rangeslider-in-plotly-to-a-fixed-range[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия