Files
aistudio-wpf-diagram/Live-Charts-master/Examples/Wpf/CartesianChart/Bubbles/BubblesExample.xaml.cs
2021-07-23 09:42:22 +08:00

67 lines
2.1 KiB
C#

using System;
using System.Linq;
using System.Windows;
using System.Windows.Controls;
using LiveCharts;
using LiveCharts.Defaults;
using LiveCharts.Wpf;
namespace Wpf.CartesianChart.Bubbles
{
public partial class BubblesExample : UserControl
{
public BubblesExample()
{
InitializeComponent();
SeriesCollection = new SeriesCollection
{
new ScatterSeries
{
Values = new ChartValues<ScatterPoint>
{
new ScatterPoint(5, 5, 20),
new ScatterPoint(3, 4, 80),
new ScatterPoint(7, 2, 20),
new ScatterPoint(2, 6, 60),
new ScatterPoint(8, 2, 70)
},
MinPointShapeDiameter = 15,
MaxPointShapeDiameter = 45
},
new ScatterSeries
{
Values = new ChartValues<ScatterPoint>
{
new ScatterPoint(7, 5, 1),
new ScatterPoint(2, 2, 1),
new ScatterPoint(1, 1, 1),
new ScatterPoint(6, 3, 1),
new ScatterPoint(8, 8, 1)
},
PointGeometry = DefaultGeometries.Triangle,
MinPointShapeDiameter = 15,
MaxPointShapeDiameter = 45
}
};
DataContext = this;
}
public SeriesCollection SeriesCollection { get; set; }
private void UpdateAllOnClick(object sender, RoutedEventArgs e)
{
var r = new Random();
foreach (var series in SeriesCollection)
{
foreach (var bubble in series.Values.Cast<ScatterPoint>())
{
bubble.X = r.NextDouble()*10;
bubble.Y = r.NextDouble()*10;
bubble.Weight = r.NextDouble()*10;
}
}
}
}
}