Skip to content

Commit feff135

Browse files
release notes for 3.1.1 (#3018)
1 parent e271c8f commit feff135

File tree

4 files changed

+68
-44
lines changed

4 files changed

+68
-44
lines changed

docs/release-notes.md

Lines changed: 46 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -2,23 +2,64 @@
22

33
This page shows features that have landed to kepler.gl in major versions. For a complete list of changes to kepler.gl including each minor version, please [visit the full change log](../CHANGELOG.md).
44

5-
## 3.1
5+
## 3.1.1
6+
7+
_Released march 10th, 2025_
8+
9+
### DuckDB
10+
11+
The DuckDB integration has been updated in response to feedback and requests, speeding up workflows for projects with local data. Notable changes include:
12+
13+
- Users can now drag and drop files directly in kepler.gl to create a DuckDB table.
14+
- The schema panel now always updates when running a query.
15+
- Improved handling of DuckDB column types.
16+
17+
![DuckDB Drag and Drop](https://4sq-studio-public.s3.us-west-2.amazonaws.com/statics/keplergl/images/kepler-gl-duckdb-drag-drop.gif)
18+
19+
### Vector Tiles
20+
21+
The Vector Tile layer has received a number of optimizations, bug fixes, and quality-of-life improvements. Notable changes include:
22+
23+
- For older tilesets without fields in the metadata file, kepler.gl now attempts to retrieve fields from the tile data.
24+
- Automatically center the map to the tileset bounds.
25+
- Fix for UI freezes during initial Tileset setup.
26+
27+
### More Bug Fixes
28+
29+
A number of bug fixes have been deployed in response to community feedback. The most notable bug fixes are listed below, but you can view a full list of changes [in the full change log](../CHANGELOG.md).
30+
31+
- Fix for geocoder coordinates, allowing users to enter coordinates directly.
32+
- Fix for icon layers at higher zoom levels—icons now remain the same size.
33+
- Fix for a broken section of the Icon Layer UI.
34+
- Ensure the RangeBrush updates when the slider range changes.
35+
- Transform binary buffers to hex WKB when saving to JSON/HTML maps.
36+
- Improved logic for changing layer types.
37+
- Support arrow text labels from non-string vector sources.
38+
- Export GeoArrow columns to CSV as GeoJSON.
39+
- Restore support for string WKB data; save binary WKB as hex WKB.
40+
- AI Assistant now sends messages to 127.0.0.1 instead of a remote Ollama URL.
41+
- Fix for disappearing heatmaps when rendering black or duplicate colors.
42+
- Fix for point column suggestions not working.
43+
- Fix for crashes in GeoJSON and Trip layers when no data is present.
44+
- Fix for the "Save Map" action when using the FSQ provider (overwrite logic).
45+
- FSQ storage provider now prompts for login instead of auto-login after logout.
46+
47+
## 3.1
648

749
_Released January 29th, 2025_
850

9-
### Vector Tiles
51+
### Vector Tiles
1052

1153
The new [Vector Tile layer](/docs/user-guides/c-types-of-layers/vector.md) allows the map to dynamically retrieve data based on the user's viewport and zoom level. This initial release supports both Mapbox Vector Tiles and PMTiles.
1254

1355
By leveraging the efficiency of vector tiles, users can visualize complex, large-scale datasets without compromising performance, making it easier to explore and analyze geospatial data.
1456

1557
![Vector layer](https://4sq-studio-public.s3.us-west-2.amazonaws.com/statics/keplergl/images/kepler-vector.gif)
1658

17-
1859
### DuckDB Support & SQL Explorer
1960

2061
Leverage DuckDB directly within kepler.gl your geospatial projects with big data. Write and execute SQL queries to perform custom analyses, visualizing the results on your map.
21-
62+
2263
DuckDB enables in-browser data processing, allowing you to work with large datasets without the need for external infrastructure.
2364

2465
![SQL Data Explorer](https://4sq-studio-public.s3.us-west-2.amazonaws.com/statics/keplergl/images/kepler-duck-db.png)
@@ -33,40 +74,29 @@ Kepler’s AI assistant can edit the map, including filters, base map customizat
3374

3475
Mapbox and MapLibre base maps are now simultaneously supported.
3576

36-
3777
### Color Scale Improvements
3878

3979
Custom color scale is now supported in categorial/ordinal fields, aggregate layers, and other layer components. In addition, custom breaks are now supported within the color scales.
4080

41-
4281
### Value Formatting
4382

4483
Formatting for numeric values (e.g. 10,000 can be formatted 10k, $10,000.00, etc; .42 can be formatted as 42%).
4584

46-
4785
### Animation Improvements
4886

4987
Includes various updates to the user interface for animation (for both time filters and the trip layer). You may also sync the layers (such as the trip layer) with filters, and conversely sync filters with the layer.
5088

51-
5289
### Legend Improvements
5390

5491
The legend is now both movable and resizable, supports the editing of legend values, and offers a scale for radius scaling.
5592

56-
5793
### Various Layer Improvements
5894

59-
A number of improvements to layers, including:
95+
A number of improvements to layers, including:
6096

6197
- Zoom to layer button lets users center their viewport on the layer’s data
6298
- Point layer now supports geojson
6399
- Arc layer supports creation from h3
64100
- A vast number of other layer improvements
65101

66102
This release also includes a wide range of bug fixes and performance improvements, which can be viewed in the [full change log.](../CHANGELOG.md)
67-
68-
69-
70-
71-
72-

docs/user-guides/ai-assistant.md

Lines changed: 13 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -8,30 +8,29 @@ The AI assistant in Kepler.gl is not only a LLM based chatbot, it is engineered
88

99
Your conversations can be advanced: `Create a geojson layer using population with quantile color scale and update its colors inspired by Van Gogh's Starry Night`. Or: `Check the correlation between temperature and precipitation in the dataset`.
1010

11-
1211
## Supported Providers
1312

1413
The following providers and models are currently supported.
1514

1615
> Note: we are working on feature to allow users specify their own providers, models and base URL.
1716
18-
| **Provider** | **Models** |
19-
|--------------|------------------------------------------------------------------------------------------------|
20-
| **OpenAI** | `gpt-4o`, `gpt-4o-mini`, `gpt-3.5-turbo`, `gpt-3.5-turbo-0125`, `o1-mini`, `o1-preview` |
21-
| **Google** | `gemini-2.0-flash-exp`, `gemini-1.5-flash`, `gemini-1.5-pro`, `gemini-1.0-pro` |
22-
| **Ollama** (local) | `deepseek-r1`, `phi4`, `phi3.5`, `qwen2.5-coder`, `qwen2`, `qawa`, `llava`, `mistral`, `gemma2`, `llama3.3`, `llama3.2`, `llama3.1`, `llama3.1:70b` |
23-
| **DeepSeek** | `deepseek-chat`, `deepseek-reasoner` |
17+
| **Provider** | **Models** |
18+
| ------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------- |
19+
| **OpenAI** | `gpt-4o`, `gpt-4o-mini`, `gpt-3.5-turbo`, `gpt-3.5-turbo-0125`, `o1-mini`, `o1-preview` |
20+
| **Google** | `gemini-2.0-flash-exp`, `gemini-1.5-flash`, `gemini-1.5-pro`, `gemini-1.0-pro` |
21+
| **Ollama** (local) | `deepseek-r1`, `phi4`, `phi3.5`, `qwen2.5-coder`, `qwen2`, `qawa`, `llava`, `mistral`, `gemma2`, `llama3.3`, `llama3.2`, `llama3.1`, `llama3.1:70b` |
22+
| **DeepSeek** | `deepseek-chat`, `deepseek-reasoner` |
2423

2524
## Parameters
2625

2726
Before initating the AI assistant, the following parameters are required. A temperature and Top P are selected for you; however, you will need to provide an API key for a remote model, and a base URL for local models.
2827

29-
| **Parameter** | **Description** |
30-
|---------------|-------------------------------------------------------------------------------------------------|
28+
| **Parameter** | **Description** |
29+
| --------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
3130
| **Temperature** | Controls the randomness of the model's output. Range: `0-2`, Default: `1`. Lower values make responses more focused and deterministic. |
3231
| **Top P** | Controls the diversity of the output by limiting the cumulative probability of token selection. Range: `0-1`, Default: `0.8`. |
33-
| **API Key** | Required for OpenAI (`gpt` models) and Google (`gemini` models). |
34-
| **Base URL** | Required for Ollama (`localhost:11434` or another specified base URL). |
32+
| **API Key** | Required for OpenAI (`gpt` models) and Google (`gemini` models). |
33+
| **Base URL** | Required for Ollama (`localhost:11434` or another specified base URL). |
3534

3635
## Built-in Features
3736

@@ -42,7 +41,7 @@ Before initating the AI assistant, the following parameters are required. A temp
4241

4342
This feature enables users to capture a screenshot anywhere within kepler.gl application and ask questions about the screenshot.
4443

45-
For example, users can take a screenshot of the map (or partial of the map) and ask questions about the map e.g. *`how many counties are in this screenshot`*, or take a screenshot of the layer configuration panel and ask questions about how to use it, e.g. *`How can I adjust the opacity`*. Users can even take a screenshot of the plots in the chat panel and ask questions about the plots e.g. *`Can you give me a summary of the plot?`*.
44+
For example, users can take a screenshot of the map (or partial of the map) and ask questions about the map e.g. _`how many counties are in this screenshot`_, or take a screenshot of the layer configuration panel and ask questions about how to use it, e.g. _`How can I adjust the opacity`_. Users can even take a screenshot of the plots in the chat panel and ask questions about the plots e.g. _`Can you give me a summary of the plot?`_.
4645

4746
![Screenshot to ask](https://4sq-studio-public.s3.us-west-2.amazonaws.com/statics/keplergl/images/kepler-ai-assistant-screenshot.png 'Screenshot to ask')
4847

@@ -100,11 +99,11 @@ The current supported actions are:
10099
- Spatial Analysis:
101100
- Spatial join two datasets (e.g. count points and polygons).
102101

103-
> Note: to see our plan to add more actions to the AI assistant, please check out this [Kepler.gl RFC]([https://github.com/kepler-gl/kepler.gl/issues/4689](https://github.com/keplergl/kepler.gl/discussions/2843)) and the [integration of GeoDa with Kepler.gl]([text](https://github.com/GeoDaCenter/openassistant/wiki/Integration-Kepler.gl---GeoDaLib))
102+
> Note: to see our plan to add more actions to the AI assistant, please check out this [Kepler.gl RFC](<[https://github.com/kepler-gl/kepler.gl/issues/4689](https://github.com/keplergl/kepler.gl/discussions/2843)>) and the [integration of GeoDa with Kepler.gl](<[text](https://github.com/GeoDaCenter/openassistant/wiki/Integration-Kepler.gl---GeoDaLib)>)
104103
105104
Users can simply describe what they want to accomplish in plain text, and the AI Assistant will invoke the appropriate function with the correct parameters that your application can execute. The LLM will identify if the question can be answered by using one or multiple function tools, and the LLM will ask the user to confirm the parameters of each function call.
106105

107-
> *Can you classify the data of the variable "population" using natural breaks and create a geojson layer using the breaks with colors inspired by Van Gogh's Starry Night.*
106+
> _Can you classify the data of the variable "population" using natural breaks and create a geojson layer using the breaks with colors inspired by Van Gogh's Starry Night._
108107
109108
#### Plots
110109

@@ -136,4 +135,3 @@ The regression details include:
136135
This scatter plot can help users to explore the relationship between two variables, and explore the heterogeneity of the data by selecting different points.
137136

138137
![Scatterplot](https://4sq-studio-public.s3.us-west-2.amazonaws.com/statics/keplergl/images/kepler-ai-assistant-scatterplot.png 'Scatterplot')
139-

docs/user-guides/c-types-of-layers/vector.md

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
# Vector Layer
22

3-
43
Vector layers use the three basic GIS features – lines, points, and polygons – to represent real-world features in digital format.
54

65
![Vector layer](https://4sq-studio-public.s3.us-west-2.amazonaws.com/statics/keplergl/images/kepler-vector.gif 'Vector layer')
@@ -21,12 +20,12 @@ Core settings for the Vector layer.
2120

2221
Settings related to the fill color of the vector data.
2322

24-
| Setting | Description |
25-
| -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
26-
| Color Based On | The field to base the fill color on. |
27-
| Color Scale | The color scale and palette for the fill color. |
23+
| Setting | Description |
24+
| -------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
25+
| Color Based On | The field to base the fill color on. |
26+
| Color Scale | The color scale and palette for the fill color. |
2827
| Dynamic Color | Enable to estimate color range and scale based on tiles selected for rendering. When panning the map, the color scale will update dynamically. |
29-
| Opacity | The opacity of the fill color. 100 = fully opaque, 0 = fully transparent. |
28+
| Opacity | The opacity of the fill color. 100 = fully opaque, 0 = fully transparent. |
3029

3130
## Stroke Color
3231

@@ -59,10 +58,8 @@ Height settings for the Vector layer. Height is best viewed with the 3D viewing
5958
| Setting | Description |
6059
| --------------- | -------------------------------------------------- |
6160
| Height Slider | Increase to raise the height of the layer objects. |
62-
| Height Based On | A column to base the height on. |
61+
| Height Based On | A column to base the height on. |
6362
| Height Scale | Choose from linear, sqrt, and log. |
6463
| Fixed Height | Applies height without additional modifications. |
6564

66-
67-
6865
[Back to table of contents](../README.md)

docs/user-guides/sql-data-explorer.md

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,19 @@
1-
# SQL/DuckDB Data Explorer
1+
# SQL/DuckDB Data Explorer
22

3-
> Note: This feature is currently undergoing development. Stay tuned for updates!
3+
**This feature is currently undergoing development. Stay tuned for updates!**
44

55
The new SQL data explorer provides a DucKDB instance where you can use SQL to transform and add data to the map.
66

77
![SQL Data Explorer](https://4sq-studio-public.s3.us-west-2.amazonaws.com/statics/keplergl/images/kepler-duck-db.png 'SQL Data Explorer')
88

99
You will need local data (i.e. data upload for your machine) or data accessible via a remote URL.
1010

11-
Any dataset already added to kepler can be accessed via SQL editor by selecting it via its name in kepler. For instance, if your dataset is named `world-cities.csv`, you can select the entire dataset by writing `SELECT * FROM 'world-cities.csv'`.
11+
Any dataset already added to kepler can be accessed via SQL editor by selecting it via its name in kepler. For instance, if your dataset is named `world-cities.csv`, you can select the entire dataset by writing `SELECT * FROM 'world-cities.csv'`.
1212

1313
The data does not need to be pre-loaded to kepler -- you may also select data remotely via SQL. The following example loads earthquake data from our sample data repository:
1414

1515
```
1616
SELECT * FROM 'https://raw.githubusercontent.com/keplergl/kepler.gl-data/refs/heads/master/earthquakes/data.csv'
1717
```
1818

19-
2019
Once you have a data selection you are satisfied with, click **Add to Map**. Your new dataset will be added to kepler. If you have a column that contains recognizable geography data, (i.e. lat/lng columns or polygon geometries), layers will automatically be created.

0 commit comments

Comments
 (0)