I have two json files one for England, the other for Scotland. I tried combining both and loading them as a shape file however geopandas only recognises one over the other. Is there a way to combine polygons of both json files?
Solution is below:
import pandas as pd
import geopandas as gpd
file_list = ['topo_eer England.json','topo_eer Scotland.json']
dfs = [] # an empty list to store the data frames
for file in file_list:
data = pd.read_json(file, lines=True) # read data frame from json file
dfs.append(data) # append the data frame to the list
temp = pd.concat(dfs, ignore_index=True) # concatenate all the data frames in the list.
temp.to_json('temp.json', orient='records', lines=True)
df = gpd.read_file("temp.json")
df.plot()

Assuming that you really need to combine the two files into one (and to be able to plot a data frame built from that file), you could read both JSON files as geo data frames, then concatenate them with pandas.concat, save the concatenated data frame to a new JSON file, read it to a special geo data frame, and finally plot that special geo data frame:
The result:
But if you didn't care about having a combined JSON file, you could simply plot the respective geo data frames one by one, on the same matplotlib axes:
In this way, it would be easy to use some nice colors to be able to differentiate between the two countries: