Zooming And Panning

Zooming and panning is disabled by default, you can enable it by setting the ZoomMode
property, this property is of type
LiveChartsCore.Measure.ZoomAndPanMode
(enum) and the options are X
, Y
, Both
and None
(default), you can learn more
about zooming an panning here.
In desktop, use the mouse wheel to zoom in/out, hold click and drag to move the view (panning).
View model
using System;
using CommunityToolkit.Mvvm.ComponentModel;
using LiveChartsCore;
using LiveChartsCore.SkiaSharpView;
namespace ViewModelsSamples.Lines.Zoom;
[ObservableObject]
public partial class ViewModel
{
public ViewModel()
{
var values = new int[100];
var r = new Random();
var t = 0;
for (var i = 0; i < 100; i++)
{
t += r.Next(-90, 100);
values[i] = t;
}
SeriesCollection = new ISeries[] { new LineSeries<int> { Values = values } };
}
public ISeries[] SeriesCollection { get; set; }
}
using Eto.Forms;
using LiveChartsCore.SkiaSharpView.Eto;
using ViewModelsSamples.Lines.Zoom;
namespace EtoFormsSample.Lines.Zoom;
public class View : Panel
{
private readonly CartesianChart cartesianChart;
public View()
{
var viewModel = new ViewModel();
cartesianChart = new CartesianChart
{
Series = viewModel.SeriesCollection,
TooltipPosition = LiveChartsCore.Measure.TooltipPosition.Hidden,
ZoomMode = LiveChartsCore.Measure.ZoomAndPanMode.X // mark
};
Content = cartesianChart;
}
}